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技术分享平台

阅读原文

JQuery七个常犯的错误相关推荐

  1. java list top_Java程序员最常犯的错误盘点之Top 10

    原标题:Java程序员最常犯的错误盘点之Top 10 人非圣贤,孰能无过.都说Java语言是一门简单的编程语言,基于C++演化而来,剔除了很多C++中的复杂特性,但这并不能保证Java程序员不会犯错. ...

  2. 十个Python初学者常犯的错误

    下面10个Python初学者常犯的错误,并不是真正的代码错误,代码照样可以运行,但是不够Pythonic,因为Python有自己的语言哲学,在代码的处理上有传统语言无法比拟的简洁性和便捷性. 1.   ...

  3. 《小乌龟投资智慧:如何在投资中以弱胜强》书中的精髓:认清投资中常犯的错误,开启智慧投资之路。

    <小乌龟投资智慧:如何在投资中以弱胜强>书中的精髓:认清投资中常犯的错误,开启智慧投资之路. 如今,投资理财已经成为了一个绕不开的话题,我们一边想着通过投资赶超通货膨胀率,不要让自己辛苦攒 ...

  4. 网站设计中常犯的错误

    平面 | 包装 | 广告 | 环艺 | 工业 | 网页 | 服装 | 数码 | 摄影 | 绘画 | 人才 | 论坛 | 沙龙 | 字体 首页 网页资讯 网页作品 酷站欣赏 设计文章 网页沙龙 我的空间 ...

  5. python编程新手常犯的错误_初学者开发人员都会犯的7个Python错误

    这篇文章主要介绍了七个初学者常犯的Python调试错误,并告诉大家如何去避免这些错误. 1.具有副作用的功能 由于Python不是像Haskell这样的纯函数式语言,因此会产生副作用. 严格来说,这不 ...

  6. SV学习笔记—变量及数组随机化约束常犯的错误

    目录 1.有符号变量导致的随机化错误 2.变量溢出导致的随机化错误 3.数组的约束 3.1约束数组的size函数 3.2约束数组的sum函数 4.数组约束常犯错误 4.1有符号变量导致的错误 4.2溢 ...

  7. [Vs提示:不允许使用不完整类型]使用结构体常犯的错误

    浪费您各位一点时间 这是关于一个在使用结构体时常犯的错误,错误很简单改正 对于初学者来说,很容易犯,很难发现 首先给出代码,请未来的大佬垂阅 #include <iostream> usi ...

  8. 别让这7个常犯的错误毁了你的设计

    一个成功的项目是一个好的设计.拍案叫绝的内容和一点点运气的结合.很多时候,一个简单的用户体验失误导致了设计的偏离正轨,从而破坏了内容框架甚至混乱了用户界面的预期行为设定.用户很容易不知道自己是怎么进到 ...

  9. 数据分析中会常犯哪些错误,如何解决的?

    错把相关性当成因果性 correlation vs. causation 经典的冰淇凌销量和游泳溺水人数成正比的数据,这并不能说明冰淇凌销量的增加会导致更多的人溺水,而只能说明二者相关,比如因为天热所 ...

最新文章

  1. HDU 4738 Caocao‘s Bridges(桥、任何位运算一定都要加括号、因为有重边所以用前向星)
  2. 为什么工作10年你的工资还不如新来的实习生
  3. Spring Boot如何实现在线预览?这个开源项目可以学习一下,支持99%常用文件!...
  4. bzoj4514[Sdoi2016]数字配对
  5. log4net 记录日志到sqlserver
  6. Delphi编写后台监控软件
  7. 如何通过反射将字符串转换为类
  8. java 内存同步_Java中的硬件事务性内存,或者为什么同步将再次变得很棒
  9. linux redhat 命令大全,redhat Linux命令大全
  10. 暂不升级iOS 14.2:多款iPhone续航崩溃
  11. SOUI Text控件不同状态设置不同颜色的方法
  12. ABB焊接机器人伺服电机维修常见故障
  13. 带数据库html5游戏教程,html5学习之旅-html5的简易数据库开发(18)-H5教程
  14. 微博mysql连接错误_新浪微博错误代码详解
  15. 演讲技巧_成功进行技术演讲的11个重要技巧
  16. ue4 启用ui_如何实现语音的AI启用ui设计原则
  17. MAXIMO学习笔记
  18. 英语preciouscorals贵珊瑚PreciousCorals红珊瑚
  19. 计算机右键菜单更换顺序,电脑图标排列顺序怎么自己改变了
  20. et文件怎么转成excel_excel怎么转换成word格式的文件格式?这些方法应该掌握!...

热门文章

  1. 明晰C++内存分配的五种方法的区别
  2. get_metrology_object_result_contour查询计量对象的结果轮廓
  3. 使用getline读入
  4. 复试计算机网络与软件工程,2018华南理工大学软件工程复试经验贴
  5. PreparedStatement预编译的sql执行对象
  6. aggregations 详解1(概述)
  7. IE(IE6/IE7/IE8)支持HTML5标签--20150216
  8. Kernel Page Global Directory (PGD) of Page table of Process created in Linux Kernel
  9. Docker-compose配置Mysql,Redis,MongoDB
  10. c语言掌上通,计算机二级C语言掌上通在哪下载安装?计算机掌上通好用吗?