简体   繁体   English

jQuery在页面加载时克隆div的内容

[英]jquery clone the content of a div on page load

I would like to clone an element inside a div and append it to another div without any click event, on page load. 我想在div中克隆一个元素并将其附加到另一个div,而不会在页面加载时发生任何click事件。 This is my code: 这是我的代码:

 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="hs-search-results__listing"> <li> <a href="#" class="hs-search-results__title">Search Title</a> <p class="more-link-container"> &nbsp; </p> </li> <li> <a href="#" class="hs-search-results__title">Search Title</a> <p class="more-link-container"> &nbsp; </p> </li> </ul> <script> $('.hs-search-results__listing li').each(function(){ $(this).find('.hs-search-results__title').clone().appendTo(".more-link-container"); }); </script> 

I am trying the above but it is not working. 我正在尝试上述操作,但无法正常工作。

In each iteration you are appending to all the elements with class more-link-container available in the DOM. 在每次迭代中,您将使用DOM 可用的类more-link-container附加到所有元素。 You should append the element only to the relevant p element. 您应该仅将元素附加到相关的p元素。

Change 更改

.appendTo(".more-link-container")

To

.appendTo($(this).find(".more-link-container"))

 $('.hs-search-results__listing li').each(function(){ $(this).find('.hs-search-results__title').clone().appendTo($(this).find(".more-link-container")); }); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <ul class="hs-search-results__listing"> <li> <a href="#" class="hs-search-results__title">Search Title</a> <p class="more-link-container"> &nbsp; </p> </li> <li> <a href="#" class="hs-search-results__title">Search Title</a> <p class="more-link-container"> &nbsp; </p> </li> </ul> 

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM