.end()函数在jQuery中做什么?

前端之家收集整理的这篇文章主要介绍了.end()函数在jQuery中做什么?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经阅读这个网页 http://api.jquery.com/end/,但我仍然不知道什么.end()实际上。它是什么,你如何使用它?

我也读一本jQuery书,但它轻轻地釉过.end(),并没有给出任何例子。有人可以澄清吗?

解决方法@H_404_6@
$("body").find("span").css("border","2px red solid");

vs

$("body").find("span").end().css("border","2px red solid");

在这个确切的页面上,在Firebug控制台中单独执行这些语句,并注意行为的不同。基本上,.end()告诉它在找到所有跨度之后回到body,并将边框应用到body,而不是跨度。如果我们没有.end()在那里,jQuery代码基本上行为正常,并应用.css()到我们的span元素内的body。

BODY > SPAN > APPLY BORDER TO SPANS

与end()它变成

BODY > SPAN > GO BACK TO BODY > APPLY BORDER TO BODY

find()是一个破坏性的操作,意味着它改变你的jquery对象数组中的元素。

$('body')

我们当前的元素是body

$('body').find('span')

我们使用了一个破坏性操作find(),它改变了我们整个对象集合,使用spans里面的body来填充,body不再在集合中

$('body').find('span').end()

因为find是一个“破坏性”操作,它会回到之前的.find(),基本上un-does或ctrl-Z是最后一个改变我们的jquery集合的东西。

猜你在找的jQuery相关文章