jquery代码性能相关的一些小技巧

1、选择器Selector的使用

jQuery提供给我们非常丰富的手段使用选择器定位DOM元素,不同的选这起之间存在着一定的性能差异。下面对几种常用的选择器进行性能的比较:

$("#id") >= $("p"), $("div") > $(".class") > $("[attribute=value]") > $(":hidden") 

使用id以及标签名进行定位的性能是最佳的,因为jQuery底层将直接调用本地方法document.getelementById() 和 document.getElementByTagname()来定位DOM元素;

使用.class方法稍微复杂,IE9之前的版本不支持document.getElementByClassName()方法,因此通过DOM搜索方式实现,对性能影响很大;

使用属性定位DOM元素,本地js方法中没有直接的实现;目前基本所有浏览器都支持querySelectorAll()方法,但是性能因浏览器有差异。伪累选择器尽量不要单独使用。

2、链式调用

链式调用是jQuery一个非常不错的特性,原理在于处理一个对象的时候、jQuery会返回一个jQuery对象,可用于下一个处理。举例如下:

$("#id").hide();

$("#id").css("background", "#22cc88");

$("#id").show();

链式调用:$("#id").hide().css("background", "#22cc88").show();   这样可以减少选择器的使用次数(减少查找DOM的次数),而且美观;

坚决不使用链式表达、或者不适合使用链式调用的情况,可以使用缓存caching;表达如下:

var id = $("#id");     id.hide();      id.css("background", "#22cc88");      id.show();


(该博客会一直更新 (ˇˍˇ))

我是程序员中的小菜,今天第一次正在意义上的写技术博客、说的不好或者不对的地方望指正。O(∩_∩)O谢谢



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值