如何在javascript中使用参数调用函数

如何在javascript中使用参数调用函数,javascript,Javascript,我有一些带有url的图片。每个id都有自定义值。例如:id=“bg_234” 使用$(this)引用当前单击的元素,而不是简单地获取图像元素,而不是按id重新选择元素: $(function() { $('.menulink').click(function(e){ e.preventDefault(); $(this).find('img').attr('src',"http://placehold.it/333/3ef/img/picture1.jpg

我有一些带有url的图片。每个id都有自定义值。例如:id=“bg_234”


使用
$(this)
引用当前单击的元素,而不是简单地获取图像元素,而不是按id重新选择元素:

$(function() {
    $('.menulink').click(function(e){
        e.preventDefault();
        $(this).find('img').attr('src',"http://placehold.it/333/3ef/img/picture1.jpg");
    });
});

如果出于某些原因仍需要ID,请使用
$(函数(){
$('.menulink')。单击(函数(e){
e、 预防默认值();
var$anchor=$(this);//$(this)引用当前单击的元素,该元素具有“.menulink”类
$anchor.find('img[id^=“bg_”]).attr('src',”http://placehold.it/333/3ef/img/picture1.jpg");
});
});


不清楚您在问什么,想做什么?。您想根据选择$(“#bg_34444”)还是$(“#bg_234”)。菜单链接已单击?使用id您无法创建函数,因为id对于文档是唯一的。您可以使用标记名,例如img。@Shilly:如果单击的是
img
e.target
将是
img
,而不是
a
。Justinas的答案涵盖了如何处理它。@Bekimbacj我想你应该使用e.currentTargeti,我看到锚没有id,$(this.find('img').attr('id'))
$(function() {
 $('.menulink').click(function(e){
     e.preventDefault();
   $("#bg").attr('src',"http://placehold.it/333/3ef/img/picture1.jpg");
 });
});
$(function() {
    $('.menulink').click(function(e){
        e.preventDefault();
        $(this).find('img').attr('src',"http://placehold.it/333/3ef/img/picture1.jpg");
    });
});