1

divタグのクラスのクリックメソッドがあります

<div id="wrapper">
<div class="detail">abc</div>
<div class="click">click here</div>
<div ckass="click">click here</div>
</div>
<script>

${.click}.click(function(){
$(#wrapper).append("<div class="click">added</div>");
});
</script>

「ここをクリック」をクリックすると、スクリプトは新しいdivを追加しました。しかし、新しく追加されたdivをクリックしようとしても、何も起こりませんでした。新しく追加されたものもクリック可能にする方法を教えてください。どうもありがとうございます。

4

4 に答える 4

2

メソッドを使用できますon()。次に、新しく追加されたものに<div>も適用されます。

$('#wrapper').on('click', '.click', function (event) {
    $('#wrapper').append("<div class='click'>added</div>");
});

のプロキシでbind()あるを使用する場合は、次の手順を実行します。click(f)bind('click', f)

var handler = function (event) {
    $('<div class="click">added</div>')
        .appendTo($("#wrapper"))
        .bind('click', handler);
};
$('.click').click(handler);
于 2013-02-03T13:17:55.220 に答える
0

いくつかのスペルミスがあります。このコードを試してください:

<div id="wrapper">
<div class="detail">abc</div>
<div class="click">click here</div>
<div class="click">click here</div>
</div>
<script>

var handler = function (event) {
$('<div class="click">added</div>').appendTo($("#wrapper")).bind('click', handler);
};
$('.click').click(handler);
</script>
于 2013-02-03T13:18:38.293 に答える
0

ハンドラーを試してみ.on()てください。あなたのケースでは、<div class='click'>added</div>後でdomに挿入されたときにdomに存在していた直接要素にイベントをバインドしていたので、クリックしても機能しません。このためには#wrapper、またはdocument代わり#wrapperに、dom 内のすべての要素の親であるを直接呼び出すことができます。

$('#wrapper').on('click', '.click', function(){
   $('#wrapper').append("<div class='click'>added</div>");
});

これを実際に見てください:http://jsfiddle.net/RcPnN/

于 2013-02-03T13:19:19.613 に答える
0

あなたはこれを行うことができます :

<div id="wrapper">
<div class="detail">abc</div>
<div onclick='Add()'>click here</div>
<div onclick='Add()'>click here</div>
</div>
<script>
function Add(){
$("#wrapper").append("<div onclick='Add()'>added</div>");
}
</script>
于 2013-02-03T13:28:08.773 に答える