jquery插件开发规范
一、请给你的代码加上注释
这个世界不存在百分百的完美的jquery插件,注释不止是给别人看、更重要的是给自己看。
你应该把注释当做你代码的一部分,养成随手加注释的习惯,尤其是编写javascript的时候。
1、在全部代码前加上文件说明注释
以下是插件加的注释:
- /**
- * $.yitip
- * @extends jquery.1.4.2
- * @fileOverview 创建文字提示框
- * @author 姓名
- * @email 123456@126.com
- * @site wwww.123.com
- * @version 0.1
- * @date 2010-07-17
- * Copyright (c) 2010-2010 姓名
- * @example
- * $("a").yitip();
- */
- (function($){
- .......
- })(jQuery);
这是jsdoc的写法,什么是jsdoc?请点此。jsdoc简单点来说是一种javascript文档工具,使用方法可以点此。现在对jsdoc不理解没关系,你只要创建 上述类似的说明文档即可。jsdoc的命令请点此查看。
2、函数务必加注释
比如以下代码是yijs.Yitip一个方法setContent:
- yijs.Yitip.prototype = {
- /**
- *向提示框添加内容
- * @param {Object | String} content 内容
- */
- setContent : function(content){
- ...........
- }
- }
依旧遵循jsdoc规范,而不是匆匆加上“//”了事,关于jsdoc,有机会 会详细讲解。
3、参数务必加注释
比如:
- //默认参数
- $.fn.yitip.defaults = {
- /**目标容器*/
- applyTo : null,
- /**内容*/
- content : "",
- /**提示框位置*/
- position : "topMiddle",
- /**提示框位置偏移*/
- },
- /**提示框颜色*/
- color : "yellow"
- }
4、函数体内关键代码前加注释
二、javascript变量规范
在javascript世界中,没有真正意义的共有变量、私有变量、常量等概念,当你的javascript代码达到一定数量级时,过段时间你回头看自己的代码,都会把自己搞晕。
1、请在私有变量前加“_”
比如:
- var_pos = this.pos;
2、常量请大写
比如:
- this.DATA_COLOR = "color";
3、jquery对象变量前加“$”
比如:
- this.$applyTo = $(".yitip");
4、object、array变量前加“o”、“a”
很多人喜欢给数组变量加个”s”,这也是可以的,按个人习惯,如果你觉得有必要还可以给函数前加个“fn”。
三、jquery插件开发的一些建议
1、请多使用data()方法
jquery中data()方法非常有用,尤其在jquery插件开发中,因为data()所创建的缓存,可以完整的保存各种数据类型的数据,这是其他缓存机制无法比拟的。
2、请使用bind来绑定事件
很多朋友喜欢以下的代码:
- $(".yitip").click(function(){
- ........
- })
但在jquery插件开发中 更提倡使用bind:
- $(".yitip").bind('click',function(){
- .........
- })
3、善用typeof
typeof用于判断数据类型,这个方法在参数判断中非常有用处
4、插件名加个独有前缀
jquery插件成千上万,插件撞车时很容易的事,比如提示框插件:
- $.fn.tip = function(options){
- }
但tip的冲突率无疑很高,所以 加个“yi”前缀,如果你有在网上看到以yi做前缀的插件,那估计就是 写的,呵呵。
四、其他规范
1、设置版本号
有很多插件作者将版本号作为插件的一个属性,也是一个比较好的做法,比如:
- $.fn.yitip.version = 0.1
你可以不设置为属性,但在你的文件头务必加上版本注释,比如:
- /**
- * $.yitip
- * @version 0.1
- */
喜欢以0.1起始,然后把正式版的插件设置为1.0
2、将插件代码托管到网上
可以去sourceforge注册个账号,新建个开源项目,将代码托管上去,如果你不喜欢sourceforge,可以使用google的代码托管,可以看 曾发表过的使用Google Code托管代码教程。有机会发篇教程讲述如何在sourceforge上托管代码。
jquery插件开发规范的更多相关文章
- jQuery插件开发小结
jQuery插件开发规范 1. 使用闭包 (function($) { // Code goes here })(jQuery); 这是来自jQuery官方的插件开发规范要求,使用这种编写方式有什么好 ...
- JavaScript学习笔记(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- JavaScript学习总结(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- jQuery插件开发精品教程,让你的jQuery提升一个台阶
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...
- jquery插件开发继承了jQuery高级编程思路
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...
- jQuery插件开发(转)
jQuery插件开发全解析 jQuery插件的开发包括两种: 一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法.jQuery的全局函数就是属于jQuery命 ...
- Jquery插件开发精品教程
最开始接触jquery对他提供的各种插件总是十分有兴趣,但是总是不理解为什么这样写,从网络上查询了很久终于找到这篇文章,讲解的很详细,分享给大家. 要说jQuery 最成功的地方,我认为是它的可扩展性 ...
- jQuery插件开发的五种形态[转]
这篇文章主要介绍了jQuery插件开发的五种形态小结,具体的内容就是解决javascript插件的8种特征,非常的详细. 关于jQuery插件的开发自己也做了少许研究,自己也写过多个插件,在自己的团队 ...
- 转:jQuery插件开发精品教程,让你的jQuery提升一个台阶
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...
随机推荐
- C#委托及事件处理机制浅析
事件可以理解为某个对象所发出的消息,以通知特定动作(行为)的发生或状态的改变.行为的发生可能是来自用户交互,如鼠标点击:也可能源自其它的程序逻辑.在这里,触发事件的对象被称为事件(消息)发出者(sen ...
- UI:UINavigationController、界面通信
IOS中实现对控制器的管理的控制器有:UINavigationController 和 UITableBarController 两个控制器.下面是主要学习前者. 参考 ⼀.UINavigationC ...
- C:预编译指令
预编译 关于编译 参考 关于宏定义 参考 预编译又称为预处理,是做些代码文本的替换工作处理#开头的指令,比如拷贝#include包含的文件代码,#define宏定义的替换,条件编译等,就是为编译做的预 ...
- JSP+Servlet+JavaBean
MVC是三个单词的缩写:M,Model(模型):V,View( 视图 ),C,Control(控制). MVC模式的目的就是实现Web系统的职能分工, Model层:实现系统的业务逻辑,即javaBe ...
- 根据PID和VID得到USB转串口的串口号
/******************************************************************************* * * FindAppUART.cpp ...
- PPAS上运行pg_dump经过
目前我有两台机器, 分别已经安装了PPAS9.1,安装后建立了OS系统用户enterprisedb和数据库用户enterprisedb. 机器1:master 192.168.10.88 机器2: ...
- 【转】JAVA SSH 框架介绍
转自:http://www.admin10000.com/document/150.html SSH 为 struts+spring+hibernate 的一个集成框架,是目前较流行的一种JAVA W ...
- linux下的文件操作——批量重命名
概述:在日常工作中,我们经常需要对一批文件进行重命名操作,例如将所有的jpg文件改成bnp,将名字中的1改成one,等等.文本主要为你讲解如何实现这些操作 1.删除所有的 .bak 后缀: renam ...
- 在Swift中的ASCII到字符转换的问题
我们在C++里处理字符通常是这样的 char a = 'A' // A = 65 printf("'%c' = %d", a + 1, a + 1) // 'B' = 66 这在号 ...
- Mac OS系统
Mac OS系统 目录 概述 Mac OS系统常用操作 概述 Mac OS系统常用操作 显示或隐藏文件 在终端输入:defaults write com.apple.finder AppleShowA ...