jquery插件开发
2016-01-05 10:45
543 查看
深入理解JavaScript系列
http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html
css常见跨浏览器问题
就是一些CSS的问题啊 双边距 浮动错位这些
http://www.jb51.net/article/55193.htm
jquery自定义插件的写法
http://www.cnblogs.com/Jimmy009/archive/2013/01/17/jquery%E6%8F%92%E4%BB%B6.html http://www.cnblogs.com/Wayou/p/jquery_plugin_tutorial.html
jq插件定义 两种方式
第一种,静态方法
$.名字 = function(){}
$.extends{
名字 : function (){}
}
第二种,使用到jq对象定义方式,这种方法可以使用到jQuery强大的选择器
一个一个定义
$.fn.名字=function (){};
批量定义
$.fn.extend({
名字 : function (){}
})
上面的debugger可以在chrome里直接断点到那里,使用起来很方便
在处理插件参数的接收上,通常使用jQuery的extend方法,上面也提到过,但那是给extend方法传递单个对象的情况下,这个对象会合并到jQuery身上,所以我们就可以在jQuery身上调用新合并对象里包含的方法了,像上面的例子。当给extend方法传递一个以上的参数时,它会将所有参数对象合并到第一个里。同时,如果对象中有同名属性时,合并的时候后面的会覆盖前面的。
http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html
// 扩展jQuery对象,添加showTagInfo()方法 // 用于将jQuery对象所有匹配元素的标识信息追加到body元素内 // 每个元素的标识信息形如:"tagName"或"tagName#id" jQuery.fn.showTagInfo = function(){ var tags = this.map( function(){ return this.tagName + ( this.id ? "#" + this.id : "" ); } ).get(); $("body").append( tags.join("<br>") + "<br><br>" ); };
css常见跨浏览器问题
就是一些CSS的问题啊 双边距 浮动错位这些
http://www.jb51.net/article/55193.htm
jquery自定义插件的写法
http://www.cnblogs.com/Jimmy009/archive/2013/01/17/jquery%E6%8F%92%E4%BB%B6.html http://www.cnblogs.com/Wayou/p/jquery_plugin_tutorial.html
jq插件定义 两种方式
第一种,静态方法
$.名字 = function(){}
$.extends{
名字 : function (){}
}
第二种,使用到jq对象定义方式,这种方法可以使用到jQuery强大的选择器
一个一个定义
$.fn.名字=function (){};
批量定义
$.fn.extend({
名字 : function (){}
})
(function($){ $.extend({ sayHello:function(name){ console.log("Hello,"+(name?name:"Dude")+"|") }, log:function (message) { var now = new Date(); y = now.getFullYear(), m = now.getMonth()+1, d = now.getDate(), h = now.getHours(), min = now.getMinutes(), s = now.getSeconds(), time = y+"/"+m+"/"+d+" "+h+":"+min+":"+s; console.log(time+' My app: '+message); } }) $.fn.myPlugin = function(options){ var defaults = { 'color':'red', 'fontSize':'18px' }; var settings = $.extend(defaults,options); debugger; return this.css({'color':settings.color,'fontSize':settings.fontSize}); //this指代的是我们在调用该插件时,用jQuery选择器选中的元素,一般是一个jQuery类型的集合 this.css('color','red') //要让插件不打破这种链式调用,只需return一下即可。 return this.each(function(){ //对每个元素进行操作 $(this).append(' '+$(this).attr('href')); }) } })(jQuery)
上面的debugger可以在chrome里直接断点到那里,使用起来很方便
在处理插件参数的接收上,通常使用jQuery的extend方法,上面也提到过,但那是给extend方法传递单个对象的情况下,这个对象会合并到jQuery身上,所以我们就可以在jQuery身上调用新合并对象里包含的方法了,像上面的例子。当给extend方法传递一个以上的参数时,它会将所有参数对象合并到第一个里。同时,如果对象中有同名属性时,合并的时候后面的会覆盖前面的。
相关文章推荐
- jquery之对象访问
- JQuery 学习:追加HTML元素内容
- jquery 下拉多选插件
- JQuery EasyUI combobox(下拉列表框)
- jQuery校验
- 实时更新数据的jQuery图表插件DEMO演示
- jQuery EasyUI使用教程之动态改变数据网格列
- jquery回车键获取input框焦点
- 好牛逼的jQuery Mobile插件
- jQuery实现二级下拉菜单效果
- 『jQuery』.html(),.text()和.val()的概述及使用
- Jquery get parameter value
- jQuery.post(url,[data],[callback])
- jquery中ajax处理跨域的三大方式
- jquery的attr方法不能改变input的type属性
- POST ... 500 (Internal Server Error) / jquery-1.11.3.min.js:9 / ...Unexpected token o
- 汇总常用的jQuery操作Table tr td方法
- js jquery前台解析json字符串
- jQuery实现二级下拉菜单效果
- jQuery Mobile弹出窗、弹出层知识汇总