首页 > Web开发 > 详细

Jquery_感受插件_基于包装集实现一个简单的插件

时间:2014-12-04 02:08:02      阅读:362      评论:0      收藏:0      [点我收藏+]

Jquery_感受插件_基于包装集实现一个简单的插件

通过直接对jQuery.属性的方式去添加插件实在是有点土,拓展的方法应该像jQuery那样,直接对包装集进行操作,$("XXX").fun(),这样以来就需要查看jQuery的源码,了解默认方法的定义方式。jQuery将对包装集操作的方法定义在了jQuery的prototype中,并且添加了一个别名jQuery.fn,基于这种规则,实现一个简单的插件来感受一下基于包装集的插件,jquery.wrapperBasedFun.plugIn.js
 1 (function($){
 2     //演示,仅仅是修改包装集中元素的字体颜色
 3     $.fn.changeColor = function(color){
 4         //注意,此处的this已经是包装集了,不需要再添加$()来包装为jQuery对象了
 5         this.each(function(){
 6             //此处的this又是Dom节点了,需要添加$()来包装为jQuery对象
 7             $(this).css("color",color);
 8         });
 9         //链式编程是一个很好的特性,插件一定要返回包装集来支持链式编程
10         return this;
11     };
12 })(jQuery);
13 
测试页面
 1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
 2 "http://www.w3.org/TR/html4/strict.dtd">
 3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
 4     <head>
 5         <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 6         <title>Jquery_18_基于包装集的插件</title>
 7         <meta name="author" content="Administrator" />
 8         <script type="text/javascript" src="jquery-1.11.1.js"></script>
 9         <!-- jQuery类库之后再导入自定义插件 -->
10         <script type="text/javascript" src="jquery.wrapperBasedFun.plugIn.js"></script>
11         <script type="text/javascript">
12             $(function(){
13                 //直接对包装集进行操作,并且支持链式编程
14                 $("li").changeColor("red").css("fontSize","25px");    
15             });
16         </script>
17     </head>
18     <body>
19         <ul>
20             <li></li>
21             <li></li>
22             <li></li>
23         </ul>
24     </body>
25 </html>
26 
案例很简单,只是记录一下基于包装集插件的拓展手段。

Jquery_感受插件_基于包装集实现一个简单的插件

原文:http://www.blogjava.net/produ/archive/2014/12/03/421009.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!