以下のコードでは、ユーザーが "click me" div をクリックすると、新しいリスト項目が "複製" され、期待どおりに動作します。
HTML
<div class="button">Click me</div>
<div class="template">
<li>oink</li>
</div>
<ul>
</ul>
JavaScript
$(".button").on("click",function(){
var result = $('.template li').clone(); //______Descendant selector
$("ul").append(result);
});
ただし、以下のバージョンのコードでは、子孫セレクターを持たないようにコードを修正しました。このバージョンでは、「クリックしてください」divをクリックすると、クリックごとに要素の数が複合され、閉鎖が発生していることがわかりますが、子孫セレクターを追加するときにこれが発生しない理由がわかりません。説明をいただければ幸いです。ありがとうございました
HTML
<div class="button">Click me</div>
<div class="template">
<li>oink</li>
</div>
<ul>
</ul>
JavaScript
$(".button").on("click",function(){
var result = $('li').clone(); //______No descendant selector
$("ul").append(result);
});