使用jQuery的一些建议
1、尽可能使用id选择器而不是类选择器
例如:
//html
<p id="chooseId">测试文本</p>
//jQuery
console.time("timer");
;i<;i++) {
$("#chooseId").css("color","red");
}
console.timeEnd("timer");
//输出:timer: 59.244ms
//html
<p class="chooseClass">测试文本</p>
//jQuery
console.time("timer");
;i<;i++) {
$(".chooseClass").css("color","red");
}
console.timeEnd("timer");
//输出:timer: 131.523ms
2、缓存jQuery查询
例如:
//jQuery
console.time("timer");
var $chooseId = $("#chooseId");
;i<;i++) {
$chooseId.css("color","red");
}
console.timeEnd("timer");
//输出:timer: 33.429ms
//jQuery
console.time("timer");
var $chooseClass = $(".chooseClass");
;i<;i++) {
$chooseClass.css("color","red");
}
console.timeEnd("timer");
//输出:timer: 33.750ms
3、尽量减少DOM操作的次数
例如:
//html
<div id="content"></div>
//jQuery
console.time("timer");
var $content = $("#content");
;i<;i++) {
$content.append("<p>测试文本</p>");
}
console.timeEnd("timer");
//输出:timer: 381.649ms
//html
<div id="content"></div>
//jQuery
console.time("timer");
var $content = $("#content");
var items = "";
;i<;i++) {
items += "<p>测试文本</p>";
}
$content.append(items);
console.timeEnd("timer");
//输出:timer: 56.195ms
//html
<div id="content"></div>
//jQuery
console.time("timer");
var $content = $("#content");
var items = "<div>";
;i<;i++) {
items += "<p>测试文本</p>";
}
items += "</div>";
$content.append(items);
console.timeEnd("timer");
//输出:timer: 21.505ms
4、如果为同一个父元素下的多个子元素绑定了事件,尽量使用事件代理
例如:
//html
<ul id="list">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
//jQuery
$("#list").on("click",function(e) {
var clicked = $(e.target);
clicked.css("color","red");
})
使用jQuery的一些建议的更多相关文章
- jQuery效率提升建议
jQuery简洁通用的方法集把编码者从繁重的工作中解脱出来,也拉低了进入javascript的门槛,初学者对浏览器兼容性一无所知的情况下,几行代码就可以写出超炫的特效.网上有一篇文章转载比较泛滥,已经 ...
- jQuery 效率提升建议
jQuery简洁通用的方法集把编码者从繁重的工作中解脱出来,也拉低了进入javascript的门槛,初学者对浏览器兼容性一无所知的情况下,几行代码就可以写出超炫的特效.网上有一篇文章转载比较泛滥,已经 ...
- 编写更好的jQuery代码的建议
讨论jQuery和javascript性能的文章并不罕见.然而,本文我计划总结一些速度方面的技巧和我本人的一些建议,来提升你的jQuery和javascript代码.好的代码会带来速度的提升.快速渲染 ...
- 编写更好的jQuery代码的建议(share)
留个备份! 原文链接: Mathew Carella 翻译: 伯乐在线- yanhaijing译文链接: http://blog.jobbole.com/52770/ 讨论jQuery和javas ...
- jquery性能优化建议-上篇
一.注意定义jQuery变量的时候添加var关键字这个不仅仅是jQuery,所有javascript开发过程中,都需要注意,请一定不要定义成如下:$loading = $('#loading'); / ...
- Jquery学习笔记--性能优化建议
一.选择器性能优化建议 1. 总是从#id选择器来继承 这是jQuery选择器的一条黄金法则.jQuery选择一个元素最快的方法就是用ID来选择了. 1 $('#content').hide(); 或 ...
- jQuery性能优化的28个建议
我一直在寻找有关jQuery性能优化方面的小窍门,能让我那臃肿的动态网页应用变得轻便些.找了很多文章后,我决定将最好最常用的一些优化性能的建议列出来.我也做了一个jQuery性能优化的简明样式表,你可 ...
- jquery优化28个建议
我一直在寻找有关jQuery性能优化方面的小窍门,能让我那臃肿的动态网页应用变得轻便些.找了很多文章后,我决定将最好最常用的一些优化性能的建议列出来.我也做了一个jQuery性能优化的简明样式表,你可 ...
- jQuery:jQuery性能优化28条建议
http://www.xue5.com/WebDev/jQuery/671700.html 直在寻找有关jQuery性能优化方面的小窍门,能让我那臃肿的动态网页应用变得轻便些.找了很多文章后,我决定将 ...
随机推荐
- Ubuntu14.04 命令行下安装teamviewer
下载teamviewer 链接:https://pan.baidu.com/s/1hs0BppM 密码:sdmk 上传到 /home/[user] cd /home/[user] 移动安装包到 /o ...
- dubbo 线程池
在dubbo调用过程中被调用方有两个线程池:io线程池,业务线程池. 这也是dubbo调优的点. 配置信息: <dubbo:protocol name="dubbo" dis ...
- 洛谷 [P251] 餐巾计划问题
有上下界的最小费用最大流 可以联想到供求平衡问题,所以我们要拆点做这道题 把每天分为二分图两个集合中的顶点Xi,Yi,建立附加源S汇T. 1.从S向每个Xi连一条容量为ri,费用为0的有向边. 2.从 ...
- 夏令营讲课内容整理Day 0.
今年没有发纸质讲义是最气的.还好我留了点课件. 第一次用这个估计也不怎么会用,但尝试一下新事物总是好的. 前四天gty哥哥讲的内容和去年差不多,后三天zhn大佬讲的内容有点难,努力去理解吧. 毕竟知识 ...
- centos7使用docker部署gitlab-ce-zh应用
1.国内拉取镜像比较慢,所以这里采用DaoCloud源. # curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sh -s http ...
- egametang网络系统组件
先看一下网络组件的中层: AService抽象了udp和tcp协议的连接工厂,udp的连接方式也被封装的和tcp类似,但是一个接收连接的UService只能建立一个连接.这个接口既可以做服务端通过Ac ...
- B站标题/子标题/url爬取示例(requests+re)
#coding:utf-8 __author__ = "zhoumi" 3 import requests import re import urllib ''' 本文档目的在于获 ...
- JS原生Ajax&Jquery的Ajax技术&Json
1.介绍Ajax Ajax = 异步 JavaScript 和 XML Ajax是一种创建快速动态网页的技术 通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新.这意味着可以不用整个 ...
- bzoj 2073 暴力
2073: [POI2004]PRZ Time Limit: 10 Sec Memory Limit: 64 MBSubmit: 442 Solved: 327[Submit][Status][D ...
- c++ 回调函数使用
普通回调 #include<stdio.h> void printWelcome(int len) { printf("welcome -- %d\n", len); ...