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


Posted in Javascript onApril 13, 2016

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);
Javascript 相关文章推荐
文本框中,回车键触发事件的js代码[多浏览器兼容]
Jun 07 Javascript
关于JS中的闭包浅谈
Aug 23 Javascript
javascript判断office版本示例
Apr 11 Javascript
js鼠标悬浮出现遮罩层的方法
Jan 28 Javascript
谈谈JavaScript中function多重理解
Aug 28 Javascript
跟我学习javascript的var预解析与函数声明提升
Nov 16 Javascript
jQuery选择器总结之常用元素查找方法
Aug 04 Javascript
实例解析jQuery中如何取消后续执行内容
Dec 01 Javascript
jQuery实现select下拉框获取当前选中文本、值、索引
May 08 jQuery
Vue AST源码解析第一篇
Jul 19 Javascript
微信小程序 数据绑定及运算的简单实例
Sep 20 Javascript
vue-cli 组件的导入与使用教程详解
Apr 11 Javascript
深入理解关于javascript中apply()和call()方法的区别
Apr 12 #Javascript
javascript中去除数组重复元素的实现方法【实例】
Apr 12 #Javascript
Bootstrap每天必学之折叠
Apr 12 #Javascript
JavaScript几种数组去掉重复值的方法推荐
Apr 12 #Javascript
学习使用bootstrap基本控件(table、form、button)
Apr 12 #Javascript
如何高效率去掉js数组中的重复项
Apr 12 #Javascript
学习使用bootstrap3栅格系统
Apr 12 #Javascript
You might like
PHP网站提速三大“软”招
2006/10/09 PHP
关于初学PHP时的知识积累总结
2013/06/07 PHP
深入解析WordPress中加载模板的get_template_part函数
2016/01/11 PHP
javascript 关闭IE6、IE7
2009/06/01 Javascript
Javascript异步编程的4种方法让你写出更出色的程序
2013/01/17 Javascript
由ReactJS的Hello world说开来
2015/07/02 Javascript
详解A标签中href=""的几种用法
2017/08/20 Javascript
详解vue-cli与webpack结合如何处理静态资源
2017/09/19 Javascript
Three.js实现绘制字体模型示例代码
2017/09/26 Javascript
详解如何在vue项目中引入elementUI组件
2018/02/11 Javascript
前后端如何实现登录token拦截校验详解
2018/09/03 Javascript
js如何获取访问IP、地区、当前操作浏览器
2019/07/23 Javascript
基于node+vue实现简单的WebSocket聊天功能
2020/02/01 Javascript
JS Html转义和反转义(html编码和解码)的实现与使用方法总结
2020/03/10 Javascript
微信小程序实现watch监听
2020/06/04 Javascript
python脚本实现验证码识别
2018/06/07 Python
Python中使用Counter进行字典创建以及key数量统计的方法
2018/07/06 Python
Python控制键盘鼠标pynput的详细用法
2019/01/28 Python
Python实现读取txt文件中的数据并绘制出图形操作示例
2019/02/26 Python
Python实现FM算法解析
2019/06/18 Python
windows10 pycharm下安装pyltp库和加载模型实现语义角色标注的示例代码
2020/05/07 Python
django admin 根据choice字段选择的不同来显示不同的页面方式
2020/05/13 Python
寻找完美的房车租赁:RVShare
2019/02/23 全球购物
如何高效率的查找一个月以内的数据
2012/04/15 面试题
全国税务系统先进集体事迹材料
2014/05/19 职场文书
毕业生找工作自荐书
2014/06/30 职场文书
授权委托书范文
2014/07/31 职场文书
高中生第一学年自我鉴定
2014/09/12 职场文书
2014年销售助理工作总结
2014/12/01 职场文书
2015年世界无烟日活动总结
2015/02/10 职场文书
奖励申请报告范文
2015/05/15 职场文书
2015年社区重阳节活动总结
2015/07/30 职场文书
2016大学生党校学习心得体会
2016/01/06 职场文书
2017大学生寒假社会实践心得体会
2016/01/14 职场文书
python 如何在 Matplotlib 中绘制垂直线
2021/04/02 Python
python开发飞机大战游戏
2021/07/15 Python