我用:
克隆li
var clone = $('#myList li').first().clone();
然后我想删除list元素的一部分,然后我可以用新数据重新填充它。
这是列表元素:
<li class="news-item">
<a href="{{ $val->url }}">
<h3 class="news-title">{{ $val->title }}</h3>
<img src="{{ $val->thumb) }}">
</a>
</li>
我不希望按类名对每个元素进行定位,因为这会在页面之间发生变化,我希望使用相同的克隆脚本。是否可以通过标签来定位它们?
还有一个问题。
当我使用时:
var clone = $('#myList li').first().clone();
然后我可以使用以下命令将其附加到列表的末尾:
$('#tiles').append(clone);
但我只能这样做一次,我怎么能多次这样做?我尝试了以下但是它不起作用:
$('#tiles').append(clone);
$('#tiles').append(clone);
$('#tiles').append(clone);
我会把它放在循环中,但我需要一个基本的例子。
答案 0 :(得分:0)
您可以清空元素的子元素:
clone.empty();
如果您尝试插入单个元素的多个副本,则每次都需要克隆它,因为javascript变量将继续引用原始元素:
var li = $('<li />');
var ul = $('ul');
for( var i = 0; i < 5; i++){
ul.append(li.clone());
}
答案 1 :(得分:0)
是否可以通过标签定位它们?
是?与您在li
内寻找#myList
的方式相同。您可以通过clone.find('a')
或clone.find('h3')
或clone.find('img')
按标记类型定位每个子元素。
我将如何清空每个元素?
选择它们,然后在它们上面调用empty
:
clone.find('a, h3, img').empty()