锋利的jQuery读书笔记-第11章 jQuery性能优化和技巧
来源:互联网 发布:游戏主机历史 知乎 编辑:程序博客网 时间:2024/06/05 16:24
一、性能优化
1.使用最新版本的jQuery库类
2.使用最合适的选择器
$("#id") 是最高效的选择器,为了提高查询效率,如果不知道id的情况可以用find函数来缩小选择范围。
利用属性来定位DOM元素 $("[attribute=value]")方式性能非常糟糕,尽量避免使用这种选择器。
总的来说,越模糊的选择器对性能消耗越大。
尽量选择ID选择器, 尽量给选择器指定上下文范围。
3.缓存对象
将需要多次操作的对象用变量保存,而不是每次操作时都重新获取一次。 这个概念与Java中不要随意创建对象是一样的,每一个对象都会消耗性能。
4.循环时的DOM操作
循环时,注意循环体内如非必要,尽量不要获取对象,也不要操作DOM对象。
举个差代码的例子:
for(i=0;i<100;i++){ var $myList = $("#myList"); $myList.append('This is list :' + i);}
5.数组方式使用jQuery
在性能方面考虑,建议使用for和while来循环便利而不是使用$.ecah();
另外检查长度是一个检查jQuery对象是否存在的方式:
var $content = $("#content");if($content)//总是true{ // Do something}if($content.length)// 拥有元素才返回true{ // Do something}
6.事件代理
实际上是利用了事件冒泡的原理,比如说你有100个td 每一个都绑定点击事件,肯定不如给它的父元素绑定一个事件来的性能高
7.将代码转换为jQuery插件
8.使用join()拼接字符串
join()比 + 拼接字符串性能消耗更小
9.利用HTML5的Date属性
10.尽量使用原生的JS方法
比如将$(this).css("color","red"); 改写为 this.style.color="red"; 这样性能更加。 简单操作上原生JS性能优于jQuery(越底层,性能越佳~)
11.压缩js
很多工具使用,推荐使用UglifyJS。 实际就是将js代码中的空格等等进行删除和压缩,减少了js本身的大小,从而提高加载速度。
- 锋利的jQuery读书笔记-第11章 jQuery性能优化和技巧
- 《锋利的jQuery》读书笔记 第1章 认识jQuery
- 《锋利的jQuery》读书笔记 第2章 jQuery选择器
- 锋利的jQuery读书笔记-第1章 认识jQuery
- 锋利的jQuery读书笔记-第2章 jQuery选择器
- 《锋利的jQuery》十一、jQuery性能优化
- 锋利的jQuery读书笔记-第7章 jQuery插件的使用和写法
- 《锋利的jQuery》读书笔记 第4章 jQuery中的事件和动画
- 锋利的jQuery读书笔记-第4章 jQuery中的事件和动画
- 【锋利的jQuery】读书笔记
- 锋利的jQuery(读书笔记)
- 【读书笔记】锋利的 jQuery
- 《锋利的jQuery》读书笔记 第7章 插件的使用和写法
- 《锋利的jQuery》读书笔记第四章(事件和动画)
- 锋利的JQuery —— JQuery性能优化
- 《锋利的jQuery》读书笔记 第5章 jQuery对表单、表格的操作及更多应用
- 《锋利的jQuery》读书笔记 第6章 jQuery与Ajax的应用
- 锋利的jQuery读书笔记-第5章 jQuery对表单、表格的操作及更多应用
- Java面向对象的理解
- C++设计模式:简单工厂模式
- 使用 webpack + react + redux + es6 开发组件化前端项目
- Android中用GifView显示Gif动画及Gifview简介
- 关于多用户时hadoop的权限问题
- 锋利的jQuery读书笔记-第11章 jQuery性能优化和技巧
- Web自动化测试-Protractor基础(二)
- laravel框架中vagrant常用命令
- 手把手教你在github上搭建自己的代码仓库
- 常见的路由表生成算法
- 珍惜自己有限的时间和经历
- netty使用(一):java NIO
- JavaScript的BOM对象
- Android studio打包生成apk