gpt4 book ai didi

jquery - jQuery 中的 .end() 函数有什么作用?

转载 作者:行者123 更新时间:2023-12-03 21:28:35 28 4
gpt4 key购买 nike

我已经阅读了此网页http://api.jquery.com/end/但我仍然对 .end() 的实际作用一无所知。它的用途是什么以及如何使用它?

我也在读一本 jQuery 书,但它对 .end() 的描述比较模糊,并且没有给出任何关于它用途的示例。有人可以澄清一下吗?

最佳答案

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

对比

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

在该页面的 Firebug 控制台中分别执行这些语句,并注意行为有何不同。基本上,.end() 告诉它在找到所有跨度后返回正文,并将边框应用于正文,而不是跨度。如果我们没有 .end() ,jQuery 代码基本上表现正常,并将 .css() 应用于我们的 span体内的元素。

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(),它将我们的整个对象集合更改为用body内部的span填充,body不再在集合中

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

因为 find 是一个“破坏性”操作,它会恢复到我们执行 .find() 之前的状态,基本上取消操作或 ctrl-Z 是更改 jquery 集合的最后一件事。

关于jquery - jQuery 中的 .end() 函数有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1745814/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com