当前位置:  软件>JavaScript软件

CSS 选择器 Q.js

    来源:    发布时间:2015-01-16

    本文导语:  1, 和Sizzle的兼容Q(expr, context, result, seed)Q.matches支持Sizzle特别的setFilter伪类如:even,:first,:last,:lt...支持复杂的:not和:has选择器(和sizzle一样)2, 结果的正确性Sizzle在某些选择器上由于查询策略的原因,会返回错误的结果考虑在这样...

1, 和Sizzle的兼容
Q(expr, context, result, seed)
Q.matches
支持Sizzle特别的setFilter伪类如:even,:first,:last,:lt...
支持复杂的:not和:has选择器(和sizzle一样)

2, 结果的正确性
Sizzle在某些选择器上由于查询策略的原因,会返回错误的结果
考虑在这样的html上查询
"

"
查询 div~div : 应返回1个节点
查询 h1~div: 应返回1个节点
查询 div+h1~div: 应返回一个节点,但是Sizzle没有找到节点

另外
div.querySelectorAll("body *")会返回节点
所以在以元素为context的查询中不使用querySelectorAll进行优化

3, 性能
将选择器编译成函数再进行查询,除了第一次查询需要jit编译之外,以后每次查询都是最快的速度
查询策略引擎会分析选择器的组成,选择最恰当的查询策略(从开始查还是从末尾查还是从中间开始)
排除不必要的运算,如sizzle中的:lt伪类,这里查询时找够节点就会跳出查询,不会继续做无谓的查询


    
 
 

您可能感兴趣的文章:

  • CSS 2和CSS 3选择器详解
  • CSS教程之css选择器 、属性、值
  • CSS选择器引擎 Slick
  • 巧妙地使用CSS选择器
  • 大家看了就明白了css样式中类class与标识id选择符的区别小结
  • CSS基础 CSS选择符
  • CSS选择符说明
  • 动态CSS站点教程:多个页面样式提供浏览者选择
  • jquery css 选择器的实现代码
  • css类选择器的使用方法详解
  • jquery获取css中的选择器(实例讲解)
  • CSS和JS管理工具 Brewer.js
  • JS/CSS代码片段测试 JS Bin
  • JS/CSS压缩工具 YUI Compressor
  • JS和CSS合并压缩工具 SpeedJSCSS
  • 模块化管理 js 和 css Orderjs
  • CSS3实现文字动画 Textillate.js
  • CSS-JS合并/压缩 Munee
  • 基于CSS的3D幻灯片工具 reveal.js
  • CSS 3D 转换效果库 Sprite3D.js
  • 按需加载JS和CSS库 Sid
  • js/css文件加载管理 uetjs
  • JS和CSS优化工具 Minify
  • JS和CSS合并压缩工具 SpeedJSCSS iis7站长之家
  • Node.JS的CSS压缩器 clean-css
  • 基于HTML5&CSS3实现的Slideshow Slider.js
  • CSS3 的 JavaScript 动画框架 Move.js
  • 操作 CSS 规则的 JS 库 JSS
  • CSS 列表滚动效果集合 stroll.js
  • CSS动画管理工具 Animo.js
  • php正则为css和js链接增加版本信息(示例)
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java命名空间javax.swing.text.html类css的类成员方法: css定义及介绍
  • <!--@import"css/cssset/.css-->,css/cssset/.css是什么意思?
  • java命名空间javax.swing.text.html类css的类成员方法: getattribute定义及介绍
  • CSS预处理器 Less CSS
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: font定义及介绍
  • css强制换行 css强制不换行的css方法
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: margin定义及介绍
  • CSS代码格式化 CSS Beautify
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: padding定义及介绍
  • jquery css类用法(添加、修改与删除css)
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: border定义及介绍
  • CSS 框架 Simpl.css
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: clear定义及介绍
  • CSS解析器 CSS Parser
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: height定义及介绍
  • CSS压缩器 Css Compressor
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: color定义及介绍
  • Eclipse的CSS编辑插件 CSS Editor
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: display定义及介绍
  • jQuery添加/改变/移除CSS类及判断是否已经存在CSS
  • java命名空间javax.swing.text.html类css.attribute的类成员方法: float定义及介绍
  • CSS代码检查工具 CSS Lint




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3