jQuery性能优化技术分析

本文详细分析了jQuery性能优化技术,供大家参考,具体分析如下:

首先,使用jQuery类库的最新版本

与以前版本相比,新版本的jQuery将进行bug修复和一些优化。但是,需要注意的是,在更改版本后,不要忘记测试代码,毕竟有时它并不是完全向后兼容的。

两。使用合适的选择器

jQuery选择器对最坏情况的最佳性能如下:

ID选择器,如$(' # ID,上下文)

标签选择器,如$('p',上下文)

类选择器,如$(类、上下文)

属性选择符,例如$({属性、上下文)

伪类选择器,如$('隐藏',上下文)

补充和注意事项:

将上下文上下文指定给选择器,它可以减少位置元素的范围

避免ID,ID重复错误代码:var el = $(美元的#列表# item1的)

避免标签或类改性剂的ID,错误代码:var el = $(美元'ul # item1的)

如果你使用属性选择器来指定标签选择器属于,它可以加快访问速度,正确的代码:var el = $(${标题=链接)

三。缓存对象

这里的表现是坏的:


$(#家),Css(…);
$(#家)。Bind(听到咔哒声,功能)({ });
$(#家),AddClass(…);


说明:jQuery将在创建每个选择器的过程中发现DOM,耗时和性能。

更好的方法:


VaR(# HomeLink =美元美元的家,上下文);
homelink.css美元(…);
homelink.bind美元(听到咔哒声,功能)({ });
homelink.addclass美元(…);


注意:不要让相同的选择器多次出现在代码中。

四,循环中的DOM操作

使用jQuery可以轻松地添加、删除或修改DOM节点,但在某些循环中,例如为()、()或$(),下面有一个示例。


var list = $(美元的#列表);
对于(var i = 0;i < 100;i + +){
list.append美元('+我+的);
}


说明:添加李节点100次,此操作的性能不低,所以更好的方法是在插入DOM树之前创建所有要添加的节点,然后立即将它们添加到DOM树中:


var list = $(美元的#列表),
片段=;
对于(var i = 0;i < 100;i + +){
片段++;
}
list.append美元(片段);


五。使用jQuery对象数组

使用jQuery选择器获得结果是一个jQuery对象,在性能方面,建议使用一个简单的while循环,而不是$(),这使代码更快。

还要注意,检查长度是检查jQuery对象是否存在的一种方法。


var list = $(美元的#列表);
如果($ list){总是真的
做某事
}
如果($列表。长度)以元素返回true
做某事
}


六。事件代理

每一个Javascript事件,如点击,鼠标悬停,冒泡到父节点。这将是有用的当我们需要调用同一个函数的多个元素。











第一条为$(var $ # item1的),
2 = $(美元的# 2),
$(# Item3 Item3 =美元);


item1.click美元(函数(){…});
item2.click美元(函数(){…});
item3.click美元(函数(){…});



说明:这样,如果有100里,100个事件必然要绑定,显然,不科学,损失很多。

更好的方法是绑定事件到李父母UL,然后获取当前元素的点击通过event.target。


var list = $(美元的#列表);
list.click美元(功能(e){)
VaR(e.target currentItem美元=美元); / / e.target捕获当前触发事件目标元素

});


七。把你的代码转换成jQuery插件

如果您每次花时间编写类似的jQuery代码,可以将类似代码的一部分考虑为插件,它可以使代码更好地重用,并且可以帮助您有效地组织代码。

八。使用Javascript数组连接()来连接字符串

使用联接()方法有助于在处理长字符串时优化性能。


var arr = { };
对于(var i = 0;i < 100;i + +){
ARR {我} =+我+;
}
list.html美元(arr.join('));


九。合理利用HTML5的数据属性

HTML5的数据属性可以帮助我们插入数据,尤其是前端和后端之间的数据交换。jQuery的数据()方法利用HTML5的属性,来自移动数据。






VaR(#美元美元公司= '信息');
无功infoindex = infolink.data美元('info-index);
变量类型= $ infolink.data('linkinfo);


十。尽可能使用本机Javascript方法。

如:


$(这)。Css(色彩:'蓝色');



优化:


this.style.color = '蓝色';



如:


$('');



优化:


$(document.createelement('p'));


十一。压缩Javascript

使用压缩工具压缩Javascript文件。

当一个项目发布时,应该使用压缩版本的Javascript文件。

希望本文能对大家的jQuery程序设计有所帮助。