位置: 编程技术 - 正文

15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】(15个值得开发人是谁)

编辑:rootadmin

推荐整理分享15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】(15个值得开发人是谁),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:做开发的,15个值得开发人是谁,值得开发的项目,谁能开发人员中要求最高的是,做开发的,值得开发的项目,15个值得开发人是谁,15个值得开发人物,内容如对您有帮助,希望把文章链接给更多的朋友!

本文总结述了个值得开发人员关注的jQuery开发技巧和心得。非常精辟实用!分享给大家供大家参考,具体如下:

在这篇文章中,我们将介绍个让你的jQuery更加有效的技巧,大部分关于性能提升的,希望大家能够喜欢!

1. 尽量使用最新版本的jQuery类库

jQuery项目中使用了大量的创新。最好的方法来提高性能就是使用最新版本的jQuery。每一个新的版本都包含了优化的bug修复。对我们来说唯一要干的就是修改tag,何乐而不为呢?我们也可以使用免费的CDN服务,例如, Google来存放jQuery类库。

2. 使用简单的选择器

直到最近,返回DOM元素的方式都是解析选择器字符串,JavaScript循环和内建的javascript API,例如, getElementbyId(),getElementsByTagName(),getElementsByClassName()三种方式的整合使用。但是现代浏览器都开始支持querySelectorAll(),这个方法能够理解CSS查询器,而且能带来显著的性能提升。

然而,我们应该避免使用复杂的选择器返回元素。更不用说很多用户使用老版本的浏览器,强迫jQuery去处理DOM树。这个方式非常慢。

选择id是最快速的方式。如果你需要使用class名称, 那么你最好带上tag名称,这样会更快些。特别是在老浏览器和移动设备上。

访问DOM是javascript应用最慢的方式 ,因此尽量少使用。使用变量去保存选择器,这样会使用cache来保存。性能更好。

另外一个值得做的是jQuery给了你很多的额外便利选择器 ,例如,:visible,:hidden,:animated还有其它,这些不是合法的CSS3选择器。结果是你使用这些类库就不能有效地利用 querySelectorAll() 方法。为了弥补这个问题,你需要先选择元素,再过滤,如下:

3. 数组方式使用jQuery对象

运行选择器的结果是一个jQuery对象。然而,jQuery类库让你感觉你正在使用一个定义了index和长度的数组。

如果性能是你关注的,那么使用简单for或者while循环来处理,而不是$.each(),这样能使你的代码更快。

检查长度也是一个检查你的collection是否含有元素的方式。

4. 选择器属性

jQuery提供了一个属性,这个属性显示了用来做链式的选择器。

虽然上面的例子针对同样的元素,选择器则完全不一样。第二个实际上是非法的,你不可以使用它来创建一个对象。只能用来显示filter方法是用来缩小collection。

5. 创建一个空的jQuery对象

创建一个新的jQuery空间能极大的减小开销。有时候,你可能需要创建一个空的对象,然后使用add()方法添加对象。

这也是quickEach方法的基础,你可以使用这种更快的方式而非each()。

6. 选择一个随机元素

上面我提到过,jQuery添加它自己的选择器过滤。除了类库,你可以添加自己的过滤器。只需要添加一个新的方法到$.expr[':']对象。一个非常棒的使用方式是Waldek Mastykarz的博客中提到的:创建一个用来返回随机元素的选择器。你可以修改下面代码:

7. 使用CSS Hooks

CSS hooks API是提供开发人员得到和设置特定的CSS数值的方法。使用它,你可以隐藏浏览器特定的执行并且使用一个统一的界面来存取特定的属性。

更好的在于,人们已经创建了一个支持CSS hooks类库

8. 使用自定义的删除方法

15个值得开发人员关注的jQuery开发技巧和心得总结【经典收藏】(15个值得开发人是谁)

你可能听到过jQuery的删除插件,它能够允许你给你的动画添加特效。唯一的缺点是你的访问者需要加载另外一个javascript文件。幸运的是,你可以简单的从插件拷贝效果,并且添加到jQuery.easing对象中,如下:

9. $.proxy()

使用callback方法的缺点之一是当执行类库中的方法后,context被设置到另外一个元素,例如:

执行下面代码:

你将遇到问题,button会消失,不是panel。使用$.proxy方法,你可以这样书写代码:

这样才正确的执行。$.proxy方法接受两个参数,你最初的方法,还有context。这里阅读更多$.proxy in the docs.。

. 判断页面是否太过复杂

一个非常简单的道理,约复杂的页面,加载的速度越慢。你可以使用下面代码检查一下你的页面内容:

以上代码返回的数值越小,网页加载速度越快。你可以考虑通过删除无用多余的元素来优化你的代码

. 将你的代码转化成jQuery插件

如果你要花一定得时间去开发一段jQuery代码,那么你可以考虑将代码变成插件。这将能够帮助你重用代码,并且能够有效的帮助你组织代码。创建一个插件代码如下:

你可以在这里阅读更多开发教程。

. 设置全局AJAX为缺省

如果你开发ajax程序的话,你肯定需要有”加载中“之类的显示告知用户,ajax正在进行,我们可以使用如下代码统一管理,如下:

. 在动画中使用delay()方法

链式的动画效果是jQuery的强大之处。但是有一个忽略了的细节就是你可以在动画之间加上delays,如下:

jQuery动画帮了我们大忙,否则我们得自己处理一堆的细节,设置timtout,处理属性值,跟踪动画变化等等。

. 合理利用HTML5的Data属性

HTML5的data属性可以帮助我们插入数据。特别合适前后端的数据交换。jQuery近来发布的data()方法,可以有效的利用HTML5的属性,来自动得到数据。下面是个例子:

为了存取数据你需要调用如下代码:

如果你想看看实际的例子,请参考这篇教程:

HTML5+jQuery插件Quicksand实现超酷的星际争霸2兵种分类展示效果: 本地存储和jQuery

本地存储是一个超级简单的API。简单的添加你的数据到localStorage全局属性中:

localStorage.someData = "This is going to be saved across page refreshes and browser restarts";

但是对于老的浏览器来说,这个不是个好消息。因为他们不支持。但是我们可以使用jQuery的插件来提供支持一旦本地存储不能用的话。这种方式可以使得本地存储功能正常工作。

以上是我们介绍的个jQuery的开发技巧。希望本文所述对大家jQuery程序设计有所帮助。

更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jquery中Ajax用法总结》、《jQuery表格(table)操作技巧汇总》、《jQuery拖拽特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》、《jquery选择器用法总结》及《jQuery常用插件及用法总结》

希望本文所述对大家jQuery程序设计有所帮助。

jquery easyui datagrid实现增加,修改,删除方法总结 本文实例讲述了jqueryeasyuidatagrid实现增加,修改,删除的方法。分享给大家供大家参考,具体如下:页面:bodyformid="form1"runat="server"tableid="tt"/table/form/body

jQuery中each()、find()和filter()等节点操作方法详解(推荐) 1.each(callback)官方解释:返回值:jQuery概述以每一个匹配的元素作为上下文来执行一个函数。意味着,每次执行传递进来的函数时,函数中的this关键字都

jQuery中的each()详细介绍(推荐) each()方法能使DOM循环结构简洁,不容易出错。each()函数封装了十分强大的遍历功能,使用也很方便,它可以遍历一维数组、多维数组、DOM,JSON等等在javaSc

标签: 15个值得开发人是谁

本文链接地址:https://www.jiuchutong.com/biancheng/387281.html 转载请保留说明!

上一篇:HTML5+jQuery插件Quicksand实现超酷的星际争霸2兵种分类展示效果(附demo源码下载)(jquery22插件网)

下一篇:jquery easyui datagrid实现增加,修改,删除方法总结

  • 资产处置损益影响所有者权益总额吗
  • 职工的困难补助计入什么科目
  • 车间人员负担的工会经费
  • 劳务费属于印花税范围吗
  • 已付款未收到发票账务处理
  • 飞机票的快递费多少钱
  • 预计负债账务处理 固定资产
  • 水费收取违约金投诉回复
  • 总公司可以给分公司买车吗
  • 净资产利润率等于净资产收益率吗
  • 印花税工会经费会计分录
  • 营改增后取得施工作业收入需要交哪些税?
  • 甲供材的范围
  • 详解劳务报酬个人所得税应该怎么计算?
  • 进项抵扣抵扣
  • 转售水电收入
  • 对方用房子抵债会计怎么记账
  • 招大学生做兼职的网站
  • 销售购进材料会计分录
  • 代开专票交的城建税怎么申报附加税
  • 卫生许可证为什么需要两个健康证
  • 接受应税劳务的会计分录怎么写
  • 出口货物退免税凭证资料应当保存几年
  • 增值税留抵税额在借方还是贷方
  • 餐饮业现金流
  • 电脑怎么更新系统日期
  • 如何解决windows7台试电脑蓝屏问题
  • 冲减管理费用的情况
  • pow是什么意思中文翻译
  • 在Mac OS Yosemite 系统中如何发送超大邮件附件
  • 开出转账支票补付款项
  • 企业购进商品取得的现金折扣
  • php可以做什么脚本
  • 废料收入的成本怎么核算
  • 前端埋点sdk
  • 新政府会计制度科目解读
  • 谷粒商城二十五springCloud之Sleuth+Zipkin 服务链路追踪
  • css实现文字颜色渐变
  • 补充医疗保险属于什么
  • mysql数据类型怎么判断
  • 会计的借记和贷记什么意思
  • 如何恢复sql server误删除的数据库
  • 从业人数的计算方法
  • 简易征收预缴税率怎么算
  • 普通发票的金额包含增值税吗
  • 汽车租赁入什么费用
  • 企业设置的坏账科目
  • 劳务外经证预缴税款
  • 股东投资款超过注册资金的案例
  • 购置一项设备,有两种可供选择
  • 融资租赁本金和租金的区别
  • 无需缴纳的税费是什么
  • 原材料暂估的账务处理
  • 会计凭证要保存多少年企业注销
  • 产品销售成本计算表
  • SQL Server SQL Agent服务使用教程小结
  • 微软公布新企业AI产品定价 股价应声涨至盘中纪录高位
  • u盘装系统系统资料会被泄露吗
  • 怎么清理win7
  • win7系统无法修复怎么办
  • 双系统电脑怎么装系统
  • nclaunch.exe - nclaunch进程有什么用 是什么意思
  • win7系统笔记本怎么调节电脑亮度
  • cocos2dx 2.2.2
  • python作业题目
  • vue导航组件
  • es6十大特性
  • 15个常用的excel函数公式
  • js日历控件代码和效果
  • js中的?
  • 安卓手机管家在哪里打开
  • 安卓开发例子
  • jquery 判断是否显示
  • jquery网页
  • centos7如何安装
  • 哪个机场离东莞樟木头最近
  • 开票系统增值税专票税率选多少
  • 电子签章在电脑上怎样加印章
  • 税务行政执法风险防范与控制
  • 税务总局2013年65号公告
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设