/**
* @lisence jquery plugin demo v1.0.0
*
* author: Jeremy Yu
*
* description:
* this is a jquery plugin Template
* see the end of this document to learn how to use the jquery plugin
*/
;
(function($, window, document, undefined) { /* 插件类定义 */
var PluginName = function(el, options) {
this.version = "1.0.0"
this.el = el;
this.options = options;
this.init(); //调用初始化方法
} /* 定义无参方法,方法名为 init */
PluginName.prototype.init = function() {
/* 初始化操作 */
alert('初始化成功');
} /* 定义有参方法,方法名为 func */
PluginName.prototype.func = function(arg) {
/* TODO */
} /* 定义有返回值方法,方法名为 funcRet */
PluginName.prototype.funcRet = function() {
/* TODO
* 执行完后返回结果
* 返回值可以是undefined、null、数字、字符串、布尔值、对象等
* 如果没有返回,默认返回 undefined
*/
return 0;
} /* 定义命名空间,且作为data的key */
var namespace = 'plugin_name';
/* 定义插件 */
$.fn.plugin_name = function(options) {
var $this = $(this);
var value, args = Array.prototype.slice.call(arguments, 1);
var data = $this.data(namespace);
if (!data) {
var settings = $.extend({}, $.fn.plugin_name.defaults, options);
$this.data(namespace, data = new PluginName(this, settings));
}
if (typeof options == 'string') {
value = data[options].apply(data, args);
}
return typeof value === 'undefined' ? this : value;
}; /* 定义插件的默认值(属性、事件) */
$.fn.plugin_name.defaults = {
prop1: "",
prop2: "",
onEvent: function(arg1, arg2) {},
onError: function(err) {}
}; /*
引入 jquery.min.js 和 当前 js 文件 HTML代码:
<div id="#plugin"></div> 插件使用
$('#plugin').plugin_name({ prop1 : '', onEvent : function(){}}); 方法调用
$('#plugin').plugin_name('function_name', args);
*/ })(jQuery, window, document);

简记 jQuery 插件模板的更多相关文章

  1. jQuery 插件模板

    1.为每一个DOM对象创建一个插件对象 模板定义: (function($) { $.pluginName = function(element, options) { var defaults = ...

  2. 我最喜欢的jQuery插件模板

    我使用jQuery已经有相当长的时间了,并且我会常常为它写一些插件(plugin).我尝试过用不同的方式去写,现在这个模板是我最喜欢的: 1 2 3 4 5 6 7 8 9 10 11 12 13 1 ...

  3. 关于jquery插件模板的两个案例

    /** * jquery tips 提示插件 jquery.tips.js v0.1beta * * 使用方法 * $(selector).tips({ //selector 为jquery选择器 * ...

  4. JQuery插件模板

    (function($){ $.fn.插件名 = function(settings){ var defaultSettings = { } /* 合并默认参数和用户自定义参数 */settings ...

  5. jQuery插件编写及链式编程模型小结

    JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我们就来看看如何把我们常用的功能做出JQu ...

  6. jQuery插件编写及链式编程模型

    jQuery插件编写及链式编程模型小结 JQuery极大的提高了我们编写JavaScript的效率,让我们可以愉快的编写代码,做出各种特效.大多数情况下,我们都是使用别人开发的JQuery插件,今天我 ...

  7. 前端模板文件化jQuery插件 $.loadTemplates

    工作中使用前端模板引擎,如 artTemplate.jsRender,来替代拼接字符串. 可是直接把模板写在页面上会带来页面臃肿,模板无法重用,与 ASP.NET等后端语言语法冲突等问题. 所以将多个 ...

  8. 出位的template.js 基于jquery的模板渲染插件

    找了好几款基于jquery的模板渲染插件,无一感觉很难用(教程较少.绑定不统一),也可能我智商问题,比如jquery template.js .jtemplate.js. 然后在github上找到这一 ...

  9. javascript&&jquery编写插件模板

    javascrpt插件编写模板 这里不分享如何编写插件,只留一个框架模板,使用面向对象的形式进行编写,方便管理 ;(function(window,document){ function FnName ...

随机推荐

  1. [COCI2017.1]Deda —— 解锁线段树的新玩法

    众所周知,能用线段树做的题一定可以暴力 但考场上也只能想到暴力了,毕竟还是对线段树不熟练. deda 描述 有一辆车上有n个小孩,年龄为1~n,然后q个询问,M X A代表在第X站时年龄为A的小孩会下 ...

  2. vue构造器注册UI组件

    import ConfirmComponent from '../../components/confirm/index' import { mergeOptions } from '../plugi ...

  3. Struts2之上传

    单文件上传 上传页面 <%@ page language="java" contentType="text/html; charset=UTF-8" pa ...

  4. 用Emacs编写mybatis

    用Emacs编写mybatis */--> code {color: #FF0000} pre.src {background-color: #002b36; color: #839496;} ...

  5. Android应用程序开发中碰到的错误和获得的小经验

    1,Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGE Description:这表示手机内存不足,对内存较小的手机经常会出现这样的问题,从 ...

  6. 【java】jstack分析查看线程状态

    演示代码 public class StackTest { public static void main(String[] args) { Thread thread = new Thread(ne ...

  7. 【JAVA】 02-Java对象细节

    链接: 笔记目录:毕向东Java基础视频教程-笔记 GitHub库:JavaBXD33 目录: <> <> 内容待整理: 面向过程: 代表语言-c:即通过函数体现,并不断调用函 ...

  8. VUE小案例--跑马灯效果

    自学Vue课程中学到的一个小案例,跑马灯效果 <!DOCTYPE html> <html lang="zh-CN"> <head> <me ...

  9. 常见前端面试题http部分

    1.常见http状态码 100 Continue 继续,一般在发送post请求时,已发送了http header之后服务端将返回此信息,表示确认,之后发送具体参数信息 200 OK 正常返回信息 20 ...

  10. 20180209-json&pickle&shelve模块

    什么是序列化? 序列化就是把内存里的数据类型转成字符串,以使其能够存储到硬盘中或在网络中传输到远程,因为硬盘和网络传输时只接收bytes 用于序列化的两个模块 1. json,用于字符串和python ...