**
前言
**
幸运的是,我最初写的插件成为了jQuery社区的一个主要插件。当时我偶然间看到了Marc Grabanski的Clean Calendar插件(他已经把它转为了一个jQuery插件),我喜欢它提供的日期输入界面,于是就开始研究它,并添加更多功能,作为探索jQuery能力的一个途径。最终我把这些提供给了Marc。从此,我们开始了接下来几年在这个插件上的合作。
后来,这个Calendar插件被重命名为Datepicker插件,jQuery UI团队也选择将其作为他们的日期选择插件的基础。
自那时开始,我一直出于需要和兴趣开发其他一些插件。最流行的一些包括另一个允许选择日期范围或多个独立日期的Datepicker、一个提供非公历日期的Calendars插件、一个显示到达给定时间所剩余时间的Countdown插件,以及一个允许用户和页面上SVG元素交互的SVG Integration插件。这段时间,我学习了许多关于JavaScript和jQuery的知识,以及如何为jQuery编写插件。
创建插件是重用功能的一个理想方式,能使其简单地被纳入其他网页。它还可以让开发者更彻底地测试代码,确保在所有使用环境中的行为一致性。
这几年间,jQuery在功能和大小上都显著增长,但是它让开发者的工作更为简单的目的并没有改变。欣欣向荣的插件社区证明了jQuery团队提供这个易于扩展的平台的远见。我希望本书中提供的见解能让读者在自己的项目中最大化地使用jQuery的功能。
目录
**[第2章 第一个插件
2.1 jQuery的架构](https://yq.aliyun.com/articles/96489)**
2.1.1 jQuery的扩展点
2.1.2 选择器
2.1.3 集合插件
2.1.4 工具函数
2.1.5 jQuery UI小部件
2.1.6 jQuery UI特效
2.1.7 动画属性
2.1.8 Ajax处理
2.1.9 事件处理
2.1.10 验证规则
2.2 一个简单的插件
2.2.1 占位文字
2.2.2 水印插件的代码
2.2.3 清除水印
2.2.4 使用水印插件
2.3 总结
**[第6章 函数插件
6.1 定义插件](https://yq.aliyun.com/articles/96521)**
6.1.1 本地化插件
6.1.2 框架代码
6.1.3 加载本地化文件
6.2 jQuery Cookie插件
6.2.1 Cookie的交互
6.2.2 读写cookie
6.3 总结