如何克隆点击功能上的项目?

How to Clone items on Click function?

我用本地存储创建了一些元素,它工作正常,但我希望这些项目也应该被克隆到特定的 div 标签。

这是我的 jsFidddle 代码 jsFiddle Demo

现在,当我尝试将所有元素克隆到 <div class="all-items"></div> 但它不起作用时 下面是我的代码

 $(function() {
  $('.mix').click(function() {
    $(this).toggleClass('selected')
    window.localStorage.setItem('test' + this.dataset.id, $(this).hasClass('selected'));
  });

  $('.mix').each(function() {
    var id = 'test' + this.dataset.id;
    if (localStorage.getItem(id) && localStorage.getItem(id) == "true") {
      $(this).addClass('selected');
    }
        });
  $(document).ready(function() {
    var e = $('.top-items');
    for (var i = 0; i < 5; i++) {
      e.clone().insertAfter(e);
    }
});

HTML 在这里

<div class="top-items">
<div data-id="1" class="box p001 mix ">Div 1</div>
<div data-id="2" class="box p002 mix">Div 2</div>
<div data-id="3" class="box p002 mix">Div 2</div>
<div data-id="4" class="box p002 mix">Div 2</div>
<div data-id="5" class="box p002 mix">Div 2</div>
</div>

<div class="all-items"></div> //all elements should be clone here on click one by one

为了实现这一点,我尝试了点击功能,但它没有提供完美的解决方案,因此我希望在添加元素时应该从这个 <div class="all-items"></div> 克隆标签中删除 onclick。

非常感谢任何帮助或建议。

你可以这样做

let topItemsHTML = $(".top-items").html()
$(".top-items").html("");  // clear top-items div

$(".all-items").html(topItemsHTML)  // fill all-items with top-items