jquery拓展插件开发
学习参考网址整理:
http://blog.csdn.net/chenxi1025/article/details/52222327
http://www.cnblogs.com/ellisonDon/archive/2012/08/12/2634503.html
jquery插件的开发包括两种:
1、类级别插件开发:给jquery类添加类方法,可理解为添加静态方法;例如$.AjAX()函数;
//定义全局函数
$.foo = function(){};
$.bar = function(){};
//$.foo();$bar();
//使用extend定义全局函数
$.extend({
foo : function(){
},
bar : function(){
}
});
//$.foo();$bar();
//使用命名空间定义全局函数
$.plugin = {
foo : function(){
}
}
//接受参数控制插件的行为
(function($){
$.popShow = function(options){
var default = {
id : "",
url : "",
title : ""
};
var settings = $.extend({},default,options);//利用extend把default的对象的方法属性整合到options中;
//此处不需要this.each(function(){});
//执行代码
var _id = settings.id,
_url = settings.url,
_title = settings.title;
$(_id).closet(".popWrap").hide();
//...
};
//调用方法:$.popShow({
id : ".close",
url : "",
title : "编辑"
});
})(jQuery);
//$.plugin.foo();
2、对象级别插件
//形式一
(function($){
$.fn.foo = function(){};
})(jQuery);
$.fn.foo = function(){};
//形式二
(function($){
$.fn.extend({
foo : funciton(){};
})
})(jQuery);
//接受参数控制插件的行为
(function($){
$.fn.popShow = function(options){
var defaults = { //配置项
url : "",
title : ""
};
var settings = $.extend({},defaults,options);// 这个是利用extend方法把 defaults对象的方法属性全部整合到 options里
this.each(function(){
//$.fn.abc()这种实例化方法才需要有this.each循环给多个相同类名的元素绑定此方法里面的事件;// $("div").abc();
var tag = $(this); //调用方法时为$("#div").popShow(); 此处的$(this)相当于$("#div");
//执行代码
return this;
});
};
})(jQuery);
jquery拓展插件开发的更多相关文章
- js获取网页的url文件名( 例如index.aspx),js获取url的参数(例如获取 ?cid=joeylee的值),给jquery拓展方法
<script type="text/javascript"> var JsRequest={ //这就是一个静态类,类里面有2个静态方法 //方法一:获取url的 ...
- 基于jquery的插件开发
最近在公司做一个项目,由于后台数据太多需要分页显示,在网上找了很多插件都没有找到合适的分页插件,所有的分页插件始终达不到自己想要的效果.由于这个项目也不是很赶,就在网上查找各种资料,自己写一个基于jq ...
- jquery 拓展
1. 概述 jquery允许拓展自定义的方法, 绑定到$.fn对象上, 编写一个jQuery插件的原则: 给$.fn绑定函数,实现插件的代码逻辑: 插件函数最后要return this;以支持链式调用 ...
- jquery 拓展函数集
方式: 通过拓展在调用$()时返回的包装器 1.将函数绑定到$.fn $.fn.disable = function(){ return this.each(function(){ if (typeo ...
- $fn、$extends $fn.extends的用法,jquery的插件开发
原文链接:http://caibaojian.com/jquery-extend-and-jquery-fn-extend.html Query.fn.extend(); jQuery.extend( ...
- Jquery拓展方法
拓展JQuery一般有两个方法: 1.全局拓展 比如 $.ajax()就是全局函数 拓展方法: Jquery.extend(); 比如: $.extend({ hello:function(mynam ...
- jquery easyui 插件开发
(function($) { /** * 插件定义 */ $.fn.resquery = function(options, param) { if (typeof options == " ...
- jquery 拓展方法
摘抄自(http://hi.baidu.com/jjjvzugcpmcdmor/item/0e32a89c36a18544f04215d7) $.fn是指jquery的命名空间,加上fn上的方法及属性 ...
- JQuery的插件开发——重点
1.给JQuery全局对象扩展一个函数方法 $.log=function(){ /* 给全局对象$扩展一个函数*/ } $.log;//调用方法 2.给JQuery普通对象扩展一个函数方法 3.使用第 ...
随机推荐
- (二)Oracle学习笔记—— 序列
1. 序列简介 序列作为数据库里的对象,可以将序列值装入内存以提高访问效率,主要作用是生成唯一的主键值.其作用相当于一个计数器,它并不会与特定的表关联.通过创建Oracle序列和触发器实现表的主键自增 ...
- [UIDevice currentDevice].model
iPhone Simulator iPad Simulator iPod touch iPad iPhone
- Titel Block不显示
在原有原理图上New page时不显示Titel Block 解决办法:两种(1)(2) 方法1.在新建的原理图上右键选择Schematic Page Properties,按下图勾选即可 方法2.进 ...
- ping的原理以及ICMP
ping 的原理: ping 程序是用来探测主机到主机之间是否可通信,如果不能ping到某台主机,表明不能和这台主机建立连接. ping 使用的是ICMP协议,它发送icmp回送请求消 ...
- docker mongo backup 不用找啦,就在这里。
rm -rf /tmp/mongodump && mkdir /tmp/mongodumpdocker run -it --rm --link lps-mongodb:mongo -v ...
- Atitit hre框架v5 新特性 HREv5
Atitit hre框架v5 新特性 HREv5 1. V5新特性 apiurl2="/wrmiServlet";1 2. V1 新特性1 3. V2 新特性 添加php版1 ...
- Atitit.attilax的 case list 项目经验 案例列表
Atitit.attilax的 case list 项目经验 案例列表 1. Atian inputmethod 输入法3 2. Ati desktop engine桌面引擎3 3. Acc资金账户系 ...
- 【LeetCode OJ 016】3Sum Closest
题目链接:https://leetcode.com/problems/3sum-closest/ 题目:Given an array S of n integers, find three integ ...
- Linux下查看硬件信息的方法
用硬件检测程序kuduz探测新硬件:service kudzu start ( or restart) 查看CPU信息:cat /proc/cpuinfo 查看板卡信息:cat /proc/pci 查 ...
- 非侵入式Ajax
基本准备 首先,新建一个ASP.NET MVC 3的空项目. 然后新增一个Model,代码如下: using System; using System.Collections.Generic; usi ...