IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

jQuery之find选择器

WEB前端开发 2010-10-07 08:22:10 累计浏览 4,400 次
本机暂存

    jQuery有非常强大的Sizzle引擎来实现选择器,jQuery做了优化,他们能很好的工作,你一般不必担心太多。然而,我们可以稍微做一些改进,将可以使你的脚本略有提高。

    一般在jquery中能不要用Sizzle引擎就不要用,当然前面说了只要有可能,就尽量使用.find()方法。比如:

以下是代码片段:
// Fine in modern browsers, though Sizzle does begin "running"

$(’#someDiv p.someClass’).hide();

// Better for all browsers, and Sizzle never inits.

$(’#someDiv’).find(’p.someClass’).hide();

    上面两行代码执行的结果是完全一样的,但是下面一句的效率要比上面一句的执行效率高。

    现代浏览器(除IE6,IE7)都有QuerySelectorAll支持,能允许你像CSS选择器一样获取对象,而不需要用到jQuery中的Sizzle引擎。jQuery会在使用自己的引擎之前检查是否存在这个函数。

    对于IE6/IE7,就需要jQuery使用Sizzle引擎,jQuery会把你的选择器转化成一个数组,并且通过从右往左来迭代匹配。通过正则表达式匹配页面每一个元素,所以你的可以尽量减少选择器的层级,尽可能的使用最右边的选择器,比如使用ID选择器等;这个规则和我们的css的查找规则是一直的,如果你要优化css选择器也要知道这个规则:从右往左来迭代匹配!

    尺度把握:

    1.保持代码简单

    2.尽可能的使用find()查找,使用浏览器的原生查找函数

    3.尽可能使用最右边的选择器,比如ID等

同分类推荐文章

  1. translateZ() (2026-06-25 21:18:56)
  2. translateY() (2026-06-25 21:17:56)
  3. translateX() (2026-06-25 21:16:01)

查看更多 前端 文章 →

建议继续学习

  1. JQuery实现Excel表格呈现 (累计阅读 48,350)
  2. 分享一个JQUERY颜色选择插件 (累计阅读 14,223)
  3. jQuery插件---轻量级的弹出窗口wBox. (累计阅读 10,773)
  4. 10个强大的Ajax jQuery文件上传程序 (累计阅读 8,854)
  5. jQuery性能优化指南 (累计阅读 8,819)
  6. jQuery的data()方法 (累计阅读 8,651)
  7. jQuery Color Animations颜色动画插件 (累计阅读 8,506)
  8. 精于图片处理的10款jQuery插件 (累计阅读 7,366)
  9. 配合jquery实现异步加载页面元素 (累计阅读 6,394)
  10. jQuery中getJSON跨域原理详解 (累计阅读 6,351)