piy*_*yer 18 javascript jquery design-patterns code-standards
你应该避免哪些JQuery糟糕/最糟糕的做法,写作或事情?
nai*_*sts 31
你应该避免的是使用"易用"选择在每一行再次,因为JavaScript实现选择的不是那个效率.当然,jQUery的人正在优化它,但我认为你应该尽可能少地使用它.
所以,这是一种不好的做法.
$("li ul span").show();
$("li ul span").toggleClass("bubu");
Run Code Online (Sandbox Code Playgroud)
链接很好
$("li ul span").show().toggleClass("bubu");
Run Code Online (Sandbox Code Playgroud)
记住局部变量中的东西也不错:
var allspans = $("li ul span");
allspans.show();
allspans.toggleClass("bubu");
Run Code Online (Sandbox Code Playgroud)
Dou*_*ner 17
我看到有两个很多:
首先,在单击事件中,id可以像这样访问:
$("a").click(function(e){
var id = $(this).attr('id');
});
Run Code Online (Sandbox Code Playgroud)
这会在DOM节点周围创建一个新的 jQuery对象,并调用一个函数.以下是正确的方法:
$("a").click(function(e){
var id = this.id;
});
Run Code Online (Sandbox Code Playgroud)
注意:您也会看到$(this).attr('href'),但这是正确的,因为jQuery在浏览器中对其进行规范化的方式.
所述第二被传递任何东西,除了DOM节点到scopejQuery的呼叫的参数:
$(".child", $(".parent")).doSomething();
// or
$(".child", ".parent").doSomething();
Run Code Online (Sandbox Code Playgroud)
这样做完全没有速度增益.你看到速度增加的地方,就是你已经拥有DOM元素:
$('div').click(function(){
$('img', this).doSomething(); // This is good
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4220 次 |
| 最近记录: |