如何移动元素结束但保持变量不更新而不更新?jQuery移动元素结束但保持变量更新
var pbUL = $('ul');
var pbLIs = $('li');
pbLIs.eq(0).appendTo(pbUL);
pbLIs = $('li'); // not good...
简单的问题 - 可能简单soluction,但我不知道如何解决......
如何移动元素结束但保持变量不更新而不更新?jQuery移动元素结束但保持变量更新
var pbUL = $('ul');
var pbLIs = $('li');
pbLIs.eq(0).appendTo(pbUL);
pbLIs = $('li'); // not good...
简单的问题 - 可能简单soluction,但我不知道如何解决......
为什么不是这样:
(function($) {
$.fn.shift = function() {
var bottom = this.get(0);
this.splice(0,1);
return bottom;
};
})(jQuery);
var arr = $('li');
arr.push(arr.shift());
jQuery有一个'推'的方法吗?或“移位”方法? – 2013-02-12 19:05:40
@KevinB - 不,但数组。 – adeneo 2013-02-12 19:06:37
是的,你的答案表明它确实......它具有.push,但它没有记录,并且不适合公共使用。它没有转变。 'pbLIs'是一个jQuery集合,而不是数组。 – 2013-02-12 19:07:09
尝试更换这一部分:
pbLIs.eq(0).appendTo(pbUL);
pbLIs = $('li'); // not good...
与此:
pbLIs = pbLIs.eq(0).appendTo(pbUL);
这会返回附加的“li”,而不是所有的“li”的 – 2013-02-12 19:06:21
他已经有了所有匹配元素的列表。即使移动了位置,移动的仍然存在。我以为OP想要那个移动的人,所以他/她可以用它做点什么。 (我想这是没有道理的,因为OP的最后一行代码。) – 2013-02-12 19:10:08
我不明白这一点,你有媒体链接匹配的元素集合,你希望它改变,因为你在DOM移动呢? – adeneo 2013-02-12 19:04:40
我不明白你想达到什么。最后一行是无用的。在此之前,pbLIs的引用仍然是相同的jQuery对象,它从来没有改变过。请提供您想要实现的示例。 – glmxndr 2013-02-12 19:05:49
您使用的是哪种浏览器和jQuery版本? [它按照预期工作](http://jsfiddle.net/mblase75/sLPEz/)。 – Blazemonger 2013-02-12 19:05:51