0

我有一个div只包含一个img. 每个img人都有一个唯一的 ID。单击时,我想将其传递给函数以更改图像。

我努力了:

$(".gallery_thumbs").children('img').click(function(){
    alert("go click !="+this.id);
    gotoImage(this.id);
})

警报是为了测试我是否将正确的内容传递给gotoImage函数,但我没有得到要绑定的 click 事件。我怎样才能做到这一点?

4

5 回答 5

1

您可能在 DOM 准备好之前绑定事件,我建议使用.on()

$(".gallery_thumbs").on('click', 'img', function(){
    alert("go click !="+this.id);
    gotoImage(this.id);
});

没有必要在里面包含函数,$(document).ready()因为on每次绑定事件时都会检查!

于 2013-05-28T14:48:16.410 回答
1

假设您已$(function() { ... })正确输入代码,请尝试以下操作:

$(".gallery_thumbs img").click(...);
于 2013-05-28T14:49:05.430 回答
0

您可以使用:

$('.gallery_thumbs > img').on('click', function(){
    alert($(this).attr('id'));
});
于 2013-05-28T14:48:59.507 回答
0

我通过向 div 中的所有拇指添加一个类然后通过该类应用点击事件来解决它,更短更容易

$(".thumb").click(function(){
    //alert("go click !="+this.id);
   gotoImage(this.id);
})  
于 2013-05-28T16:19:57.333 回答
0

你也可以试试这个。。

$(function() {
    $(".gallery_thumbs").find("img").click( function() {
        alert("go click !="+this.id);
        gotoImage(this.id);
    });
});
于 2013-05-28T14:58:33.217 回答