网站更换域名备案吗,仙桃网站网站建设,权威的网页设计公司,深圳网站建设 卓1、 乱用选择器JQuery选择器调用代价很大#xff0c;反复调用效率更低。应采用缓存对象的方法或采用链式调用的方式。//错误的写法$(#button).click(function(){ $(#list li).addClass(strong); $(#list li).css(color,red);});//正确的写法$(#button… 1、 乱用选择器JQuery选择器调用代价很大反复调用效率更低。应采用缓存对象的方法或采用链式调用的方式。//错误的写法$(#button).click(function(){ $(#list li).addClass(strong); $(#list li).css(color,red);});//正确的写法$(#button).click(function(){ $lis $(#list li); $lis.addClass(strong); $lis.css(color,red);});//更好的写法$(#button).click(function(){ $(#list li).addClass(strong).css(color,red);});2、全局选择效率低尽量使用上下文context查找避免全局选择的使用。全局选择器会进行整个Doc的查找效率很低。//错误的写法$(.active).method();//正确的写法varul $(#myList);$(.active,ul).method();3 、复制匿名函数避免多次复制匿名函数的写法将匿名函数分离出来供其它对象多次调用。//错误的写法$(#myDiv).click(function(){//一些操作});//正确的写法functiondivClickFn(){//一些操作}$(#myDiv).click( divClickFn );4 、误用ajax的complete当用ajax进行数据请求时避免使用complete回调方法而应该使用success方法。complete回调在请求成功或失败都会触发。//错误的写法$.ajax({ url:http://tools.42du.cn/jsonp/student/all,}).complete(function(data){//一些操作});//正确的写法$.ajax({ url:http://tools.42du.cn/jsonp/student/all,}).success(function(data){//一些操作});5、 链式调用的误用采用链式调用的方式会使对象在渐变未完成之前就被移除即remove方法会在fadeOut方法完成之前调用。当需要第一方法完成之后再执行第二个方法请使用回调即第二种方式。//错误的写法$(#myDiv).click(function(e){ $(this).fadeOut(slow).remove();});//正确的写法$(myDiv).click(function(e){ $(this).fadeOut(slow,function(){ $(this).remove(); });});6 、事件多次绑定如果你绑定bind同一事件多次响应就会被执行多次。为避免多次执行请先做事件解绑再重新绑定。//避免响应多次执行$(myDiv).unbind(click).bind(click);7、错误使用this指示符this指示符存在于一定的上下文中的当上下文变化时this指向不同的对象。如果还想调用原上下文中的this则需要在原上下文中缓存原this对象 $that $(this) 。//错误的写法$(#myList).click(function(){ $(this).method(); $(#myList li).each(function(){//this并不指向myList$(this).method2(); })});欢迎关注我的公众号同步更新文章DoNet技术分享平台阅读原文