方式一(自定义对象):

(function($, window, document) {

 var Plugin, defaults, pluginName;

调用时的函数名:
    pluginName = "slidesjs";
     

默认配置:
    defaults= {
      width: 940,
      height: 528,
      callback: {
        loaded: function() {},
        start: function() {},
        complete: function() {}
      }
    };
 
构建自定义对象:
    Plugin = (function() {
      function Plugin(element, options) {
        this.element = element;
        this.options = $.extend(true, {}, defaults, options);          //拓展用户自定义参数
        this._defaults = defaults;
        this._name = pluginName;
        this.init();
      }
      return Plugin;
    })();
 
拓展一系列方法:
Plugin.prototype.init  = function() { ... }
Plugin.prototype.next = function() { ... }
 ...  
 
拓展到jQuery的fn上:
return $.fn[pluginName] = function(options) {
//把选中的每个元素都进行实例化

return this.each(function() {
        if (!$.data(this, "plugin_" + pluginName)) {

          return $.data(this, "plugin_" + pluginName, new Plugin(this, options));
        }
      });
  };
 
 })(jQuery, window, document);
 
使用:
$(function() {
      $('#slides').slidesjs({
        width: 940,
        height: 528
      });
  });
 
或者这样扩展进jQuery也可以:
$.fn.Swipe = function(params) {
      return this.each(function() {
          $(this).data('Swipe', new Swipe($(this)[0], params));
      });
  }
 
 
方式2(简单点的):
(function($) {
    "use strict";

$.fn.boxRefresh = function(options) {
        var _option= $.extend({
            trigger: ".refresh-btn",
            onLoadStart: function(box) {},
            onLoadDone: function(box) {}
        }, options);
        return this.each(function() { ... });
    };

})(jQuery);
 
另一种方式,使用extend:
(function(f) {
    jQuery.fn.extend({slimScroll: function(h) {
                   ...
    }});
 
    jQuery.fn.extend({slimscroll: jQuery.fn.slimScroll})
})(jQuery);
 

jQuery 插件格式 规范的更多相关文章

  1. jQuery插件编写规范

    第一种方法: 在很多基于jQuery或基于Zepto的插件中,在立即函数执行前面会加上";"这个符号. 这是为了防止前面的其他插件没有正常关闭. 在立即执行函数执行时,会一般会传入 ...

  2. jquery插件制作,下拉菜单

    要求输入框点击出现下拉菜单,并实现以下功能: 1.首先点击地点标签页,选择好地点: 2.自动显示相应节点标签页显示节点信息,选择好节点 3.自动显示相应的连接点,选择连接点,连接点被选中并被传送的输入 ...

  3. 支持10种格式的 HTML 表格导出 jQuery 插件

    HTML 表格导出 jQuery 插件可以帮助用户导出 HTML 表格到 JSON.XML.PNG.CSV.TXT.SQL.MS-Word.MS-Excel.MS-PowerPoint 和 PDF 格 ...

  4. jQuery时间格式插件-moment.js的使用

    jQuery时间格式插件-moment.js的使用 moment.js插件的使用,使用之前在页面引入对应的js文件: 详细的操作可见moment中文官网:http://momentjs.cn/ 日期格 ...

  5. JQuery插件的写法和规范

    首先,在具体说明编写插件之前,我们先假定一个使用场景:有一个HTML页面(或.aspx页面),页面上放置了一个5行3列的表格,即:<table></table>标记,具体代码如 ...

  6. 写一个限制上传文件大小和格式的jQuery插件

    在客户端上传文件,通常需要限制文件的尺寸和格式,最常用的做法是使用某款插件,一些成熟的插件的确界面好看,且功能强大,但美中不足的是:有时候会碰到浏览器兼容问题.本篇就来写一个"原生态&quo ...

  7. 教你开发jQuery插件(转)

    教你开发jQuery插件(转) 阅读目录 基本方法 支持链式调用 让插件接收参数 面向对象的插件开发 关于命名空间 关于变量定义及命名 压缩的好处 工具 GitHub Service Hook 原文: ...

  8. 什么?你还不会写JQuery 插件

    前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui 内置web项目里了.至于使用jquery好处这里就不再赘述了,用过的都知道.今天我们来讨论 ...

  9. 写JQuery 插件 什么?你还不会写JQuery 插件

    http://www.cnblogs.com/Leo_wl/p/3409083.html 前言 如今做web开发,jquery 几乎是必不可少的,就连vs神器在2010版本开始将Jquery 及ui ...

随机推荐

  1. mybatis枚举映射成tinyint

    第一步:定义顶级枚举接口 public interface BaseEnum<E extends Enum<?>, T> { public T getCode(); publi ...

  2. C++ static成员变量与static成员函数

    类中的静态成员真是个让人爱恨交加的特性.我决定好好总结一下静态类成员的知识点,以便自己在以后面试中,在此类问题上不在被动. 静态类成员包括静态数据成员和静态函数成员两部分.  一 静态数据成员:  类 ...

  3. UWP 自定义状态栏

    在UWP开发中,我们可以改变状态栏样式,让你的应用更加好看. 先来一简单的应用: 为了做例子,所以我做的很简单,在MainPage的Grid里,插了一个Image <Grid Backgroun ...

  4. nginx配置文件作用介绍

    ######Nginx配置文件nginx.conf中文详解##### #定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数. worker_ ...

  5. Mysql主从复制原理及配置

    Mysql主从复制原理及配置 1.复制概述 Mysql内建的复制功能是构建大型,高性能应用程序的基础.将Mysql的数据分布到多个系统上去,这种分布的机制,是通过将Mysql的某一台主机的数据复制到其 ...

  6. JS双击div编辑文本内容

    HTML代码: <div class="album"> <div class="image"><a href="java ...

  7. C# readonly

    当某个字段是引用类型,并且该字段被标记为readonly时,不可改变的是引用,而非字段引用的对象,例如:

  8. checkValidity-表达验证方法。

    调用该方法,可以显示对表单元素进行有效验证,返回值是boolean. 代码如下: <!DOCTYPE html> <html> <head> <meta ch ...

  9. 干了这杯Java之Vector

    Vector实现了AbstractList抽象类和List接口,和ArrayList一样是基于Array存储的 Vector 是线程安全的,在大多数方法上存在synchronized关键字 //Vec ...

  10. 初学python之,IDLE安装

    首先新手上路,写的第一篇博客,希望大家不要吐槽. 1.首先在python官网下载最新python版本 https://www.python.org/(注意根据自己的操作系统来选版本) 安装很简单傻瓜式 ...