微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery – 链接事件和DOM迭代

下面我有两个jQuery选择器.

一个在缓存对象中搜索DOM元素,然后搜索其父元素,然后将父元素(表)分离为另一个dom元素. (例如2)

第二行(2行)通过缓存元素进行搜索.
(例如1)

$('element',table.setting.body).on('blur focus',table.focus).parents('parent').find('another element').on('click',function); // ex2

    $('element',function); // ex 1
    $('another element',table.setting.body).on('click',function); // ex 1

一个更快/最佳实践?
防爆. 1毫无疑问会更快地受到jQuery函数的影响,即. .hide().animate().show()但是,什么时候搜索DOM元素?

解决方法

看起来你正试图匹配table.setting.body中的不同后代,并对这些后代执行不同的任务,而不必两次指定table.setting.body.

您可以使用end()来实现此目的.例如,如果table.setting.body是一个jQuery对象,你可以写:

table.setting.body.find("element").on("blur focus",function).end()
                  .find("another element").on("click",function);

(如果table.setting.body是一个DOM元素,则必须首先对它应用$()).

上面的代码只评估缓存对象一次,执行两次调用find()(比我的经验中使用上下文参数调用$()稍快一些),两次调用on()(与你的相同)和a单个调用end()(只从堆栈弹出一个项目,应该非常快).

原文地址:https://www.jb51.cc/jquery/178408.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐