Posted in Javascript onMay 15, 2014
寻寻觅觅,觅觅寻寻终于找到了一些关于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 (){ });
Jquery性能优化详解
声明:登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。
Reply on: @reply_date@
@reply_contents@