更高效的使用JQuery 这里总结了8个小技巧

  作者:bea

1、DOM遍历是昂贵的,将变量缓存起来。 代码如下: //不推荐 var h = $('#ele').height(); $('#ele').css('height', h-20); 代码如下: //推荐 var $ele = $('#ele'); var h = $ele.height(); $ele.css('height',h-20); 2、优化选择符。 代码如下: //不推荐 $('div#myid') 代码如下: //
1、DOM遍历是昂贵的,将变量缓存起来。


代码如下:


//不推荐
var h = $('#ele').height();
$('#ele').css('height', h-20);





代码如下:


//推荐
var $ele = $('#ele');
var h = $ele.height();
$ele.css('height',h-20);



2、优化选择符。


代码如下:


//不推荐
$('div#myid')





代码如下:


//推荐
$('#myid')



3、避免隐式通用选择符。


代码如下:


//不推荐
$('.someclass :radio')





代码如下:


//推荐
$('.someclass input:radio')



4、避免通用选择符。


代码如下:


//不推荐
$('.container > *')





代码如下:


//推荐
$('.container').children()



5、尽可能保持代码简洁。


代码如下:


//不推荐
if(arr.length > 0){}


 


代码如下:


//推荐  
if(arr.length){}



6、尽可能地合并函数。


代码如下:


//不推荐
$f.on("click", function(){
    $(this).css('border','1px solid red');
    $(this).css('color','blue');
});





代码如下:


//推荐
$f.on("click", function(){
    $(this).css({
        'border':'1px solid red',
        'color': 'blue'
    });
});




7、尽可能使用链式操作。


代码如下:


//不推荐
$ele.html();
$ele.on("click",function(){});
$ele.fadeIn('slow');





代码如下:


//推荐
$ele.on("click",function(){
  
}).fadeIn('slow').animate({height:'12px'},500);



8、对DOM元素作大量操作,先分离在追加


代码如下:


//不推荐
var $container = $('#somecontainer');
var $ele = $container.first();
.......一系列复杂操作

 




代码如下:


//推荐
var $container = $('#somecontainer');
var $ele = $container.first().detach();
.......一系列复杂操作
$container.append($ele);





有用  |  无用

猜你喜欢