1.好像之前看视频记录下来的,不记得了。
//类级别插件开发,主要是在jQuery中定义全局方法: //第一种写法
jQuery.myFunc = function(str){
alert("直接在jquery中定义方法",str)
}
//调用方式 $.myFunc("hello!"); //第二种写法
jQuery.extend({
myFunc:function(str){
alert("extend扩展$的方法",str)
}
})
//调用方式 $.myFunc("hello!"); //第三种写法: 为了不污染全局,挂载一个对象作为命名空间,自定义的所有方法放在这里,保证jQuery全局安全。
jQuery.define={
myFunc:function(str){
alert("命名空间的写法",str)
}
} //调用方式:$.define.myFunc("hello"); //以上三种是级别插件开发方式,不常用,从调用方式看出,他们是全局执行的,不需要绑定节点对象。 //对象级别插件开发:有规范模板 ;(function($){
$.fn.plugin = function(options){
var defaults = {
//各种默认参数
}
var options = $.extend(defaults,options); //传入的参数覆盖默认参数
this.each(function(){
var _this = $(this); //缓存一下插件传进来的节点对象。
//执行内容 })
return $(this); //把节点对象返回去,为了支持链式调用。
}
})(jQuery); //调用方式
$("selector").plugin({
//自定义参数,json格式
})