0

ページがあります

<div id="aar">  
    <div id="stack0" class="stack">stack1</div>
    <div id="stack1" class="stack">stack1</div>
    <div id="stack2" class="stack">stack1</div>
</div>

次のスクリプトが実行されます

$(document).ready(function(){
    $(".stack").click(function(){
       $("#aar").html($("#aar").html()+'ann');
    });
});

.stack クリック機能は 1 回だけ実行されます。なぜですか?

4

2 に答える 2

3

これは、古い dom を新しいものに置き換えたためであり、新しいものにはバインドされたクリック イベント ハンドラーがありません。

.append メソッドを使用して新しいコンテンツを追加することもできます。

$(document).ready(function(){
    $(".stack").click(function(){
        $("#aar").append(this.id);
    });
});
于 2012-04-15T06:25:14.597 に答える
0

ユーザーがクリックする代わりにライブ:

$(document).ready(function(){
$(".stack").live('click', function(){
    $("#aar").html($("#aar").html()+$(this).attr("id"));
});

}); </p>

于 2012-04-15T06:22:57.203 に答える