Jquery性能优化详解
作者:
寻寻觅觅,觅觅寻寻终于找到了一些关于jquery性能优化的文章,果断收藏当然不能忘了加上自己的一些总结及理解。
寻寻觅觅,觅觅寻寻终于找到了一些关于jquery性能优化的文章,小编果断收藏当然不能忘了加上自己的一些总结及理解。
首先,之前文章中的jquery链式操作就是jquery性能优化方式中的一种,具体实现及优势在这里就不重复了哈。其次,jquery的优化与web优化中的某些方法是一样的。
a.压缩js。使用代码压缩技术,减小文件体积。(使用jsmin、YUI Compressor等)。
b. 事件默认是向上冒泡的,发生在子节点中的事件,可以由父节点来处理。把事件注册上提到父节点上,这 样就不需要为每个子节点注册事件监听.
c.利用缓存,当要多次使用某个jquery对象时,可以将jquery对象缓存到变量里。
复制代码 代码如下:
var nodeTd = $("table td");
var $cj = $("#cj");
$cj.on("click",function(){
$cj.css("color","blue");})
jquery结果缓存,如果需要将jquery结果对象在程序中的其他地方使用,或者function会多次执行,那么就可以将其存放到一变量中。
d.尽量从id选择器来继承。因为id的唯一性,id选择是jquery选择一个元素最快的方法了。
复制代码 代码如下:
$("#firstd").slideDown(500);
$("#firstd img").slideUp(500);//利用id选择器继承来选择多个元素
e.使用子查询
复制代码 代码如下:
zhuye.on("swiperight","#data li",function(){
$(this).find(".delete").hide();
});//swiperight——看jquery-mobile api内容内容
f.采用find(),儿不使用上下文查找,.find()函数更快速些,在上面的e中已有使用。
g.采用jquery的内部函数data()来存储状态(这种性能优化方法在百度时第一次见到,例子也暂直接引用他的吧)。
复制代码 代码如下:
$('#head').data('name', 'value');
// 之后在你的应用中调用:
$('#head').data('name');
h.最后,使用新版本的 jQuery及简化jquery代码。
复制代码 代码如下:
$(document).ready(function (){
});
$(function (){
});