JQuery插件开发 - 模板
(function($) {
$.fn.PluginName = function(options) {
// 创建一个默认设置对象
var defaults = {
key : "DefaultValue"
}
//使用extend方法从options和defaults对象中构造出一个新的设置对象
var options = $.extend(defaults, options);
/****************
执行代码
****************/
};
})(jQuery);
//调用自定义的JQuery插件
$(".className").PluginName({key:"NewValue"});
var options = $.extend(defaults, options);
/*↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓*/
Object.extend = function(destination, source) { // 一个静态方法表示继承, 目标对象将拥有源对象的所有属性和方法
for (var property in source) {
destination[property] = source[property];// 利用动态语言的特性, 通过赋值动态添加属性与方法
}
return destination;// 返回扩展后的对象
}
(function($) {
var methods = {
init : function(options) {
// 创建一个默认设置对象
var defaults = {
key : "DefaultValue"
}
//使用extend方法从options和defaults对象中构造出一个新的设置对象
var options = $.extend(defaults, options);
/***************
执行代码
***************/
}
};
$.fn.PluginName = function(options) {
//获取传入的第一个实参副本(arguments对象是收到的实参副本,就像数组,但却又不是数组)
var method = arguments[0];
//获取我们的方法
if (methods[method]) {
//如果方法存在,存储起来以便使用
method = methods[method];
//如果方法不存在,检验对象是否为一个对象(JSON对象)或者method方法没有被传入
arguments = Array.prototype.slice.call(arguments, 1);
} else if ( typeof (method) == 'object' || !method) {
//如果我们传入的是一个对象参数,或者根本没有参数,init方法会被调用
method = methods.init;
} else {
//如果方法不存在或者参数没传入,则报出错误。需要调用的方法没有被正确调用
$.error('Method ' + method + ' does not exist on jQuery.ChangeTabs');
return this;
}
//调用我们选中的方法
return method.apply(this, arguments);
};
})(jQuery);
$('.className').pluginName('init', 'argument'); // 调用:把 "argument 1" 和 "argument 2" 传入 "init"
JQuery插件开发 - 模板的更多相关文章
- jquery插件开发模板
(function($){ $.fn.extend({ //将可选择的变量传递给方法 pluginname: function(options) { //设置默认值并用逗号隔开 var default ...
- jQuery 插件开发解析
那么首先我们来简单的看一下最正统的 jQuery 插件定义方式: (function ($) { $.fn.插件名 = function (settings) { //默认参数 var default ...
- jQuery 插件开发指南
jQuery凭借其简洁的API,对DOM强大的操控性,易扩展性越来越受到web开发人员的喜爱,经常有人询问一些技巧,因此干脆写这么一篇文章给各位jQuery爱好者,算是抛砖引玉吧. 那么首先我们来简单 ...
- JavaScript学习笔记(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- JavaScript学习总结(四)——jQuery插件开发与发布
jQuery插件就是以jQuery库为基础衍生出来的库,jQuery插件的好处是封装功能,提高了代码的复用性,加快了开发速度,现在网络上开源的jQuery插件非常多,随着版本的不停迭代越来越稳定好用, ...
- jQuery插件开发精品教程,让你的jQuery提升一个台阶
要说jQuery 最成功的地方,我认为是它的可扩展性吸引了众多开发者为其开发插件,从而建立起了一个生态系统.这好比大公司们争相做平台一样,得平台者得天下.苹果,微软,谷歌等巨头,都有各自的平台及生态圈 ...
- jquery插件开发
jQuery是一个封装的很好的类,比如我们用语句$("#btn1") 会生成一个 jQuery类的实例. 一.jQuery插件开发注意要点 1.使用闭包,避免全局依赖,避免第三方破 ...
- jQuery插件开发(溢出滚动)
声明:此程序仅针对手机端,简单的封装一个插件,意在记载插件的开发过程,如有错误及不足之处,还望即时指出. 移动开发的时候,我们经常会遇到滑动事件,众所周知手机端滑动主要依靠touch事件.最近接连遇到 ...
- 从零开始学jQuery插件开发
http://www.w3cfuns.com/notes/19462/ec18ab496b4c992c437977575b12736c.html jQuery 最成功的地方,是它的可扩展性,通过吸引了 ...
随机推荐
- 史上最详细版!java文件打包成exe,在未配置安装JDK和未配置的电脑上运行--转载
原文地址:http://funine.iteye.com/blog/2220359 (本文所有素材将在文章最后附上) 准备工具exe4j, converticon.com(用于制做.ico格式的图片) ...
- linux man使用方法 和centos安装中文man包 --转
http://blog.chinaunix.net/uid-25100840-id-302308.html 这两天学习<linux设备驱动程序开发详解>中的异步通知,其中有一个fcntl( ...
- git-ssh 配置和使用
1.设置Git的user name和email:(如果是第一次的话) $ git config --global user.name "humingx" $ git config ...
- Oracle基础 动态SQL语句
一.静态SQL和动态SQL的概念. 1.静态SQL 静态SQL是我们常用的使用SQL语句的方式,就是编写PL/SQL时,SQL语句已经编写好了.因为静态SQL是在编写程序时就确定了,我们只能使用SQL ...
- ValidateRequest="false" 无效
在做牛腩新闻发布系统的时候,部分同学可能会遇到这样的情况: 从客户端(ContentPlaceHolder1_m_ContentPlaceHolder_ftbContent="<P&g ...
- Windows防火墙出站、入站相关知识总结
出站默认是全部允许,只禁止相关出站规则指定的条目:入站默认是全部禁止,只允许相关入站规则指定的条目. 入站规则其实没什么好说的,直接添加规则允许某IP或端口访问,或允许某程序全部访问,就行了. 要控制 ...
- hdu 3308 LCIS 线段树
昨天热身赛的简单版:LCIS.昨天那题用树链剖分,不知道哪里写错了,所以水了水这题看看合并.更新方式是否正确,发现没错啊.看来应该是在树链剖分求lca时写错了... 题目:给出n个数,有两种操作: 1 ...
- 初识 Asp.Net内置对象之Cookie对象
Cookie对象 Cookie对象用于保存客户端浏览器请求的服务器页面,也可用于存放非敏感性的用户信息,信息保存的时间可以根据用户的需要经行设置.并非所有的浏览器都支持Cookie,并非数据信息都是以 ...
- poj 3980 取模运算
取模运算 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 10931 Accepted: 6618 Description ...
- GUID (全局唯一标识符)
全局唯一标识符(GUID,Globally Unique Identifier)是一种由算法生成的二进制长度为128位的数字标识符.GUID主要用于在拥有多个节点.多台计算机的网络或系统中. ...