0

のみをdiv含む がありimgます。それぞれimgに固有の ID があります。クリックすると、これを関数に渡して画像を変更したいと考えています。

私が試してみました:

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

アラートは、正しいコンテンツを関数に渡していることをテストすることですが、gotoImageバインドするクリック イベントを取得していません。どうすればこれを達成できますか?

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

これも試すことができます..

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

div のすべてのサムにクラスを追加して回避し、クラスを介してクリック イベントを適用すると、より短く簡単になりました。

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

あなたが使用することができます:

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