表单中的按钮问题、jQuery选择器优化效率问题

一、表单中有<button>一旦点击就会提交表单,要给<button>加上type=“button”属性。

二、

1.  Duplicated jQuery selector

两处使用了同一个id选择器,JQuery建议使用一个变量去存储这个选择器,而不是每次用的时候便拿来调用一下,它不会帮你做缓存,而是重新去取。可以参考StackOverflow上的回答:

https://stackoverflow.com/questions/16863844/jquery-duplicate-selector-error

2.Inefficient jQuery usage

效率不足。

参考jq选择器效率总结:


1.最好直接使用id选择器。

最快的选择器是id选择器,因为他直接会使用js原生的方法:getElementById()



2.在class前记得标签(tag),最好标出父代id

第二快的是标签选择器,因为他直接使用js原生:getElementsByTagName()

var active_light = $('#traffic_light input.on');
class选择器是jq里效率最低的之一,在IE里他会循环查找整个dom。所以这选择器能不用就不要用。

也不要在id选择器前加上tag。例如

var content = $('div#content');
因为他为了找到id为content的元素会循环查找所有div。

也不要使用两个id,这样是多余的,例如:

var traffic_light = $('#content #traffic_light');

3.缓存jq元素

如果你要使用一个元素很多次,千万不要这样:


应该这样:


如果你有一个函数想使用多次,可以使用一个全局变量缓存。例如:


4.使用链式操作

不用解释了吧


5.使用多层查找

即jq遍历方法的使用,祖先、后代、同胞的查找。

也就是.find()的使用。


6.不要直接操作dom

可以先放在变量里,再一次性塞进去。



7....之后的比较少用了,不记录了。

总:https://www.cnblogs.com/50614090/archive/2011/09/06/2168910.html



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值