首先不得不承认它的优秀 是一个轻量级的js库,但是在某些时候用的时候不注意的用法 会引程序性能大大的降低。
第一,选择器
$("#traffic_light input.on").bind("click", function(){ ... });
$("#traffic_light input.on").css("border", "1px dashed yellow");
$("#traffic_light input.on").css("background-color", "orange");
$("#traffic_light input.on").fadeIn("slow");
$("#traffic_light input.on").each(function(){
});
像这些方法 在firefox 上看不出效果 但是在IE 上运行完全不一样,因为jquery 自身选择就每次去找这个对象自身不知不觉进入循环中 。
比如像 .css 这方法 去改变样式和直接for 拼在 style =“”中的效果 相差 1000ms (当然Doc比较大时候)
第二,尽量减少js each(循环) 的次数
第三,若同一个对象要用多次的时候,尽量用一个对象存储(或全局变量) ,这样jquery只会去查找一次,而不会你上面一次查找多次 。
第四,查找时尽量用ID 尽量少用class 查找(本人测试过,速度有非常大的差异)
第五,尽量使用原生的JavaScript方法,因为它不需要拐弯抹角的去调用许多函数。
相关文档可参考:
[url]https://docs.google.com/View?docID=dft4vhq9_22g93szvdd&revision=_latest
[/url]
[url]https://docs.google.com/View?docID=dft4vhq9_23cnccgwc7&revision=_latest
[/url]
[url]https://docs.google.com/View?docid=dft4vhq9_21hjb7j9fz&revision=_latest
[/url]