博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jQuery 性能优化技巧
阅读量:6303 次
发布时间:2019-06-22

本文共 1262 字,大约阅读时间需要 4 分钟。

原文地址:

博客地址:

一、使用最新版本 jQuery 类库

二、合理使用选择器

# 推荐使用$("#id") # 可以使用$("p"),$("span") # 可以使用$(".class") # 尽量避免$("[attribute=value]")  # 尽量避免$(":hidden")复制代码

三、使用缓存对象

场景:修改某个按钮的文本和颜色

# 不好的写法$("#btn").text("重置");$("#btn").css("color","red");复制代码
# 优化的写法var $btn = $("#btn");$btn.text("重置").css("color","red");复制代码

四、循环时减少对DOM的操作

场景:往 <ul> 中添加 <li> 菜单项

# 不好的写法var $ul = $("#menu");for(var i=0; i<6; i++) {    $ul.append("
  • 菜单"+i+"
  • ")}复制代码
    # 优化的写法var $ul = $("#menu");var html = "";for(var i=0; i<6; i++) {    html += "
  • 菜单"+i+"
  • ";}$ul.append(html);复制代码

    五、使用事件代理

    场景:给 <ul> 里的所有 <li> 绑定点击变色事件

    # 不好的写法$("ul li").on("click",function() {   $(this).css("color","red"); });复制代码
    # 优化的写法$("ul li").on("click",function(e) {   var $obj = $(e.target);   $obj.css("color","red"); });复制代码

    六、将代码转成 jQuery 插件

    七、使用 join() 拼接字符串

    第四点的案例中,代码还可以进行优化

    var $ul = $("#menu");var arr = [];for(var i=0; i<6; i++) {   arr.push("
  • 菜单"+i+"
  • ");}$ul.append(arr.join("");复制代码

    八、合理利用 HTML5 的 data 属性

    使用 data-* 属性来嵌入自定义数据。

    张三
    复制代码
    var user = $("#user");    var age = user.data("age");    var gender = $("#user").data("gender");复制代码

    九、尽量使用原生的 JS 方法

    第五点的案例中,可以如下优化

    $("ul li").on("click",function(e) {   var $obj = $(e.target);   $obj.get(0).style.color = "red";});复制代码

    十、压缩 JS 代码

    如有更多优化技巧,后续补充......

    转载地址:http://uqfxa.baihongyu.com/

    你可能感兴趣的文章
    我的友情链接
    查看>>
    mysql cluster解决方案
    查看>>
    CSS vertical-align 属性
    查看>>
    OC 类和对象
    查看>>
    我的友情链接
    查看>>
    linux下安装red5
    查看>>
    我的友情链接
    查看>>
    利用反作用力,减负减压轻松快乐学习
    查看>>
    网络工程原理与实践教程前言
    查看>>
    什么是指令序和原子操作
    查看>>
    linux下的sendmail邮件服务的加密与验证
    查看>>
    如何让 windows 任务计划定时打开网址
    查看>>
    lvs+keepalived+互相主备
    查看>>
    小企业sql server数据备份shell脚本解决方案
    查看>>
    一位牵手腾讯应届毕业生的求职杂谈
    查看>>
    数据库集群系统研究系列(2)-现存的数据库的解决方案的原理解析
    查看>>
    「Git」合并多个 Commit
    查看>>
    DNS原理及其解析过程
    查看>>
    shell脚本从入门到复杂 其三(传递参数)
    查看>>
    CISCO 交换机 端口假死
    查看>>