$(document).ready(function(){
$('#add').click(function(){
$('#list-area').append("<div class='list-item'><div class='box'><div class='dot'>✓</div></div></div>");
$('.box').click(function(){
$(this).children('.dot').toggle(200);
});
});
});
ここに、すべてのコードへの jsfiddle リンクがあります。
これは、私が作成しているチェックリストの初歩的な複製です。これがどのように機能するか(または機能するはずです)は次のとおりです。
・「+」をクリックして項目を追加します。(これは正常に動作します。)
-緑色のボックスをクリックしてチェックを外すか、もう一度クリックしてチェックを外します...
...これは動作がおかしいです。私が望むのは、「.box」をクリックすると、それぞれの「.dot」子要素が一度表示を切り替える必要があるということです。しかし何が起こるかというと、アイテムの数に応じてトグルが繰り返されます。
問題を明確に確認するには、5 つの項目を追加して、緑色のボックスをクリックします。一番上は5回トグルし、次は4回トグルします。
なぜこれが起こるのですか?コードを調整して、説明したとおりに動作させるにはどうすればよいですか?