我正在尝试选择ul的第一个孩子,然后将其删除,然后将其附加到ul的末尾,但不幸的是我不能选择第一个孩子。
这是代码
current = 0;
$(document).ready(function(){
width=951;
var totalSlides=$(".slider ul li").length;
$(".slider ul").removeAttr('width');
$(".slider ul").attr('width',width*totalSlides);
$('#next img').click(function(){
current -= width;
$(".slider ul").animate({"left":current+"px"}, "slow");
$(".slider ul").append($(".slider ul:first-child"));
//$('.slider ul:firstChild').remove();
});
});
答案 0 :(得分:17)
您不需要.remove()
help或.detach()
help节点将其附加到其他位置。您只需分别.append()
help或.appendTo()
help .after()
help和.insertAfter
help来调用即可。例如:
$('ul li:first').insertAfter('ul li:last');
答案 1 :(得分:15)
可以选择ul
的第一个孩子:
$('ul > :first-child');
或:
$('ul').children().eq(0);
或:
$('ul li:first');
可能还有很多其他方法。
答案 2 :(得分:9)
其中任何一个都可行:
$('ul > li:first')
$('ul > li:first-child')
$('ul > li:eq(0)')
$('ul > li:nth-child(1)')
$('ul > li').eq(0)
$('ul > li').first()
$('ul > li')[0]
答案 3 :(得分:0)
ul:first-child
未选择ul
的第一个孩子,它会选择第一个孩子本身的ul。使用li:first-child
。
答案 4 :(得分:0)
首先,为每个第一个跨度创建一个类,如下所示:
<li><span class = "the_span">a1</span><span>b1</<span></li>
<li><span class = "the_span">a2</span><span>b2</<span></li>
<li><span class = "the_span">a3</span><span>b3</span></li>`
在Javascript中,你写道:
var spanEl = document.getElementsByClassName("the_span");
你去吧!