此前一直想就关于Jquery插件的开发,做一个深入的学习,由于各种原因,当然主要是自己太懒了...今天就系统分析一下Jquery插件的开发(参考了http://www.xprogrammer.com/812.html)

     1.对JQuery自身的扩展插件
     直接上代码,代码中体会
     $.extend({
          handler:function(event){
              .....//代码区
          }
     });
     主要是$.extend()方法的运用,回头自习看一下$.extend()的运用.
     2.对HTML标记或页面元素进行扩展
     使用这种插件时,需要首先引用经过JQuery包装的页面元素,如:$('selecter').method();
     示例代码:
     (function($){
          $.fn.handler=function(event){
               ...//代码区
          };
     })(JQuery)
     个人感觉就是一个匿名函数的使用,当然$.fn才是这种方式的精髓.
     3.不要用在页面显式调用JQuery的方法,而是通过直接添加JQuery插件脚本引用,即可实现对该插件的调用
     (function($){
          $.handler={
               set:function(){
                    
               },
               get:function(){
                    
               }
               ....
          };
          $(function(){
               $.handler.set();
          });
     })(JQuery);
     使用的时候,需要对外部脚本引用
     
插件的基本要点
在编写插件的时候,我们需要记住这些要点,虽然不照着这么做不会影响使用,但是要是你的插件是不规范的代码,那何必花苦心思去写插件.JQuery插件的文件名推荐命名为jquery.[插件名].js,以免和其他JavaScript库插件混淆.例如命名为jquery.color.js
所有的对象方法都应当附加到JQuery.fn对象上,而所有的全局函数都应当附加到JQuery对象本身上.
在插件内部,this指向的是当前通过选择器获取的JQuery对象,而不像一般的方法那样,例如click()方法,内部的this指向的是DOM元素
可以通过this.each来遍历所有元素.
所有的方法或函数插件,都应当以分号结尾,否则压缩的时候可能出现的问题.为了更稳妥些,甚至可以在插件头部先加上一个分号,以免他人的不规范代码给插件带来影响.具体方法可以参考后面的代码.
插件应该返回一个jQuery对象,以保证插件的可链式操作.除非插件需要返回的是一些需要获取的量,例如字符串或者数组等.
避免在插件内部使用$作为jQuery对象的别名,而应使用完整的jQuery来表示.这样可以避免冲突.当然,也可以利用闭包这种技巧来回避这个问题,使插件内部继续使用$作为jQuery的别名.很多插件都是这么做的.
     好的关于jQuery插件的开发就先到这里......

JQuery插件的学习的更多相关文章

  1. Jquery 插件初学习

    参考文章:插件开发精品教程,让你的jQuery提升一个台阶 刚刚学了一下jquery的插件插件开发,写个demo记录.练习一下.毕竟,输出才是最好的学习. 这个也不过是最基础的一个插件写法,只是,自己 ...

  2. jquery 插件 validate 学习

    jquery是十分方便的对于现在来说. 首先应该明白一个问题: <p> <label  for="password">Password</label& ...

  3. (转)jQuery插件编写学习+实例——无限滚动

    原文地址:http://www.cnblogs.com/nuller/p/3411627.html 最近自己在搞一个网站,需要用到无限滚动分页,想想工作两年有余了,竟然都没有写过插件,实在惭愧,于是简 ...

  4. jQuery插件编写学习+实例——无限滚动

    最近自己在搞一个网站,需要用到无限滚动分页,想想工作两年有余了,竟然都没有写过插件,实在惭愧,于是简单学习了下jQuery的插件编写,然后分享出来. 先说下基础知识,基本上分为两种,一种是对象级别的插 ...

  5. jQuery插件编写学习中遇见的问题--attr prop

    个人博客: https://chenjiahao.xyz 最近在学习jQuery的插件的编写,有两种方式,$.fn.extend以及$.extend,一种是作用于对象原型上,一种是直接作用于jQuer ...

  6. jquery插件扩展的学习

    jquery插件的学习可以点击这里 举个例子 //首先先来一个插件 (function($){ $.fn.extent({ bigfont:function(){ return this.css('f ...

  7. jquery插件学习之元素顶部悬浮

    jquery插件的学习: HTML部分及应用 <!DOCTYPE html> <html> <head> <meta charset="utf-8& ...

  8. Jquery插件学习

    前端开发也工作了一段时间,Jquery代码页写了很多,但是都是些的很零散的,不是很好用,网上看了很多人写的Jquery 很好用,而且到每个项目中都可以使用, 本人就感觉很好奇他们是怎么做到的呢,于是自 ...

  9. jQuery插件学习(一)

    由于项目开发需要,经常会用到一些jquery插件,但网上已有的插件常常又不能100%满足业务需求,所以就想自己能看懂插件的代码,进行一些功能上的改动和补充,或者能自己自定义插件就更好了.所以这段时间会 ...

随机推荐

  1. Android:调试之DDMS

    DDMS 的全称是Dalvik Debug Monitor Service,是 Android 开发环境中的Dalvik虚拟机调试监控服务. 在Eclipse,项目启动了虚拟器后,右上角选择Open ...

  2. C++:常类型Const

    常类型:使用类型修饰符const说明的类型,常类型的变量或对象成员的值在程序运行期间是不可改变的. 3.10.1 常引用 如果在说明引用时用const修饰,则被说明的引用为常引用.如果用常引用做形参, ...

  3. Mmap的实现原理和应用

    http://blog.csdn.net/edwardlulinux/article/details/8604400 很多文章分析了mmap的实现原理.从代码的逻辑来分析,总是觉没有把mmap后读写映 ...

  4. How to upgrade boost libary using apt-get ?

    apt-get install libboost1.55-all-dev using version number between boost and all, but the preconditio ...

  5. excel文档

    1.快速统计行数(ctrl+Shift+(方向键向下)). bson数据类型 留个影响 public enum BsonType { Double = 0x01, String = 0x02, Doc ...

  6. 自定义View(4)Canvas和Paint常用绘制函数

    画布Canvas 在Android下进行2D绘图需要Canvas类的支持,它位于"android.graphics.Canvas"包下,直译过来为画布的意思,用于完成在View上的 ...

  7. 宏buf_pool_t

    typedef struct buf_pool_struct buf_pool_t; struct buf_pool_struct{ /** @name General fields */ /* @{ ...

  8. bzoj1185

    一遇到数学题和计算几何题我就要调半天…… 玛雅,我真是太弱了…… 基本思路很简单,先上凸包,然后矩形与凸包一边重合,然后旋转卡壳即可 然而我没怎么写过计算几何题,一开始写的各种囧,后来看了hzwer的 ...

  9. bzoj2324营救皮卡丘

    费用流. 建图比较重要. 1.S->id[0][0] flow=k. 表示k条路径. 2.S->id[i][0] flow=1, 每次消耗1流量就补充1流量. 3.id[i][1]-> ...

  10. Android+Eclipse+Java:在“正在启动 CrazySnake”期间发生了内部错误, java.lang.NullPointerException

    删除工作空间下的.metadata 文件夹 重启 Eclipse 清理工作空间