根据JQuery开发自定义插件。
来源:互联网 发布:拳皇97风云再起mac版 编辑:程序博客网 时间:2024/05/01 06:52
原文地址:
http://www.cnblogs.com/Jimmy009/archive/2013/01/17/jquery%E6%8F%92%E4%BB%B6.html
无参jquery插件的模板:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>不带参数的jquery插件开发</title> <script src="http://code.jquery.com/jquery-latest.js"></script> <script type="text/javascript"> (function($){ $.fn.extend({ myPlugName:function(){ $(this).click(function(){ alert($(this).val()); }); } }); })(jQuery); </script></head><body> <input type="button" value="点击我" id="btn" />
</body> <script type="text/javascript"> $("#btn").myPlugName(); </script></html
无参的格式为:
(function($){ $.fn.extend({ myPlugName:function(){<!--myPlugName你的插件的名字,根据自己的情况来命名--> //dosomethings }); } }); })(jQuery);
这里大概的解释一下,$.fn.extend是一个实例的扩展,但是$.extend是类的扩展,如果不明白多看一下解释,或者是去api.jquery.com看一下jquery的官方手册。jQuery和$是等价的,你可以认为是别名。myPlugName这个是插件的名字,根据自己的情况来命名自己的拆建吧!接着就是写一些你想要做的事情了!很简单吧!哈哈
带参数的jquery插件
首先看一下代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title> <script src="http://code.jquery.com/jquery-latest.js"></script> <script type="text/javascript"> (function($){ $.fn.hilight=function(options){ var defaults={ foreground:'red', background:'yellow' }; var opts = $.extend(defaults,options); $(this).css("background-color",opts.background); $(this).css("color",opts.foreground); }; })(jQuery); </script></head><body> <div id="myDiv">This is a Params JQuery!</div></body><script type="text/javascript"> $("#myDiv").hilight({foreground:'blue'});</script></html>
这里和不带参数的jquery插件差不多,但是还有略微的不同,最后$("#myDiv").hilight({foreground:'blue'});来给jquery传递参数!如果不写的话,那就用jquery自带的默认的值。jquery插件其中的一个标准模板为:
(function($){ $.fn.hilight=function(options){ var defaults={ foreground:'red', background:'yellow' }; var opts = $.extend(defaults,options); //dosomethings }; })(jQuery);
这里需要注意一句话,var opts = $.extend(defaults,options);这句话的意思是吧defaults的属性和options的属性合并并保存到opts中。不懂的话参考:http://api.jquery.com/jQuery.extend/
这里当然标准的模板不是单单上面这么一种还有很多种,我只是整理了一种为初学者学习!
最后请允许我拷贝一段话,希望对你有用:
jQuery插件的文件名推荐命名为jquery.[插件名].js,以免和其他JS库插件混淆。所有的对象方法都应当附加到jQuery.fn对象上,而所有的全局函数都应当附加到jQuery对象本身。可以通过this.each 来遍历所有的元素在插件头部加上一个分号,以免他人的不规范代码给插件带来影响。所有的方法或函数插件,都应当以分号结尾,以免压缩时出现问题除非插件需要返回的是一些需要获取的变量,插件应该返回一个jQuery对象,以保证插件的可链式操作。利于jQuery.extend()方法设置插件方法的默认参数,增加插件的可用性。在插件内部,this指向的是当前通过选择器获取的JQuery对象,而不像一般方法那样,内部的this指向的是DOM元素。
Stallman 先生认为最大的快乐是让自己发展的软件让大家来使用了!
0 0
- 根据JQuery开发自定义插件。
- jquery 自定义插件开发
- jquery 自定义插件开发
- 【jQuery】jQuery自定义插件开发
- jquery 自定义插件开发整理
- jquery自定义插件开发总结
- jquery插件开发及 jquery自定义函数
- jquery插件开发及 jquery自定义函数
- jquery插件开发及 jquery自定义函数
- jquery开发自定义的插件总结
- jquery开发自定义的插件总结
- 如何开发jQuery自定义插件一
- 如何开发jQuery自定义插件二
- jquery开发自定义的插件总结
- [ jQuery ] jquery 自定义插件!
- 【jQuery】jQuery自定义插件开发 —— 示例
- JQuery插件开发 + 插件
- 自定义 jQuery 插件, 自己开发的一个Demo
- redis集群报错
- 开发中的文本换行问题
- Java中的存储
- iOS9 App Transport Security has blocked a cleartext HTTP (http://) resource load问题解释
- 倍增算法的另一种解法
- 根据JQuery开发自定义插件。
- PS快速制作流血火焰和冰封字体
- HDU 1273 漫步森林 (纯数学问题)
- UITableView总结
- android-Backing up App Data to the Cloud
- eclipse SWT 中实现工程图标最小化到托盘,并只能右键托盘图标选择关闭
- 删除卸载Homebrew的正确姿势
- 关于高并发之初学一
- Android平台开发之线程和进程的详解