在jQuery中处理.end()函数时遇到了一些问题。我读过的文档宣称它是从过滤器或其他选择中“回滚”更改。例如,使用带有破坏性方法的jQuery end()函数
var someDivs = $('div');
someDivs
.filter('li')
.css('color', 'green')
.end(); // ok, reverted back to original wrapper
另一方面,这是行不通的。
someDivs
.get(0) // get DOM element at index 0
.end(); // error, executing a jQuery method on a plain javascript object.
我只是想确认我是正确的,某些链破坏性的方法,如HTML(),文本()和get()之后被调用,这是不可能恢复到原来的包装。
在此先感谢。
这不是不可能的。 '$(someDivs.get(0))端();'。要更新我的答案,并添加此。 – Khez 2011-04-11 01:59:53
@Khez,这不会伤心。这相当于再次从头开始选择元素,在这种情况下...... end()会去哪里? – 2011-04-11 02:06:15
@ Box9 ...呃你错了。 [一个DOM元素包装在一个jQuery对象。](http://api.jquery.com/jQuery/) – Khez 2011-04-11 02:09:40