首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

Jquery优化提案

2012-10-08 
Jquery优化方案1.总是从ID选择器开始继承Jquery中最快的选择器是ID选择器,因为它源自JavaScript的GetEleme

Jquery优化方案

1.总是从ID选择器开始继承

Jquery中最快的选择器是ID选择器,因为它源自JavaScript的GetElementById方法。

2.在class前使用tag(标签名)

在jQuery中第二快的选择器是tag(标签)选择器( 比如:$("head") )。跟ID选择器类似,因为它来自原生的getElementsByTagName() 方法。

在使用tag来修饰class的时候,我们需要注意以下几点:
(1) 不要使用tag来修饰ID,如下所示:
var content = $("div#content");
这样一来,选择器会先遍历所有的div元素,然后匹配#content(好像jQuery从1.3.1开始改变了选择器核心后,不存在这个问题了 。暂时无法考证。)

(2)不要画蛇添足的使用ID来修饰ID,如下所示:
var traffic_light = $("#content #traffic_light");

注:如果使用属性选择器,也请尽量使用tag来修饰,如下所示:
$('p[row="c3221"]').html();而不是这样:$('[row="c3221"]').html();

3.将jQuery对象缓存起来

把jQuery对象缓存起来 就是要告诉我们 要养成将jQuery对象缓存进变量的习惯。永远不要让相同的选择器在你的代码里出现多次。

4.尽量使用ID代替Class

前面性能优化已经说过,ID选择器的速度是最快的。所以在HTML代码中,能使用ID的尽量使用ID来代替class。

5.给选择器一个上下文

jQuery选择器中有一个这样的选择器,它能指定上下文。
jQuery( expression, context );

通过它,能缩小选择器在DOM中搜索的范围,达到节省时间,提高效率。
普通方式:
$('.myDiv')
改进方式:
$('.myDiv' , $("#listItem") )

6.子选择器和后代选择器

后代选择器经常用到,比如:$("#list p");后代选择器获取的是元素内部所有元素。

而有时候实际只要获取 子元素,那么就不应该使用后代选择器。
应该使用子选择器,代码如下:
$("#list > p");

?

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/dongdongleng/archive/2011/03/01/6214778.aspx

热点排行