jquery插件学习相关(1)

jQuery插件机制

jQuery提供了两个用于扩展jQuery功能的方法,即jQuery.fn.extend()和jQuery.extend()方法

jQuery.fn.extend()用于封装对象方法插件

jQuery.extend()用于封装全局函数的插件和选择器插件,同时也可扩展已有的Object对象。

jQuery.extend()

 jQuery.extend(target,obj1...objN)

常用于设置插件方法的一系列默认参数

 function foo(option){
          option = jQuery.extend({
              name : "bar",
              length : 5
          },option);/*option是传递的参数*/

插件种类:

1.封装对象方法插件

2.封装全局函数的插件

3.选择器插件

(注:在插件中,this指向的是当前通过选择器获取到的jQuery对象,一般的方法那样,内部的this指向的是DOM元素)

例 以表格变化为例:

 1 <div class="color">
 2         this is a test about font color!
 3     </div>
 4     <table>
 5         <thead>
 6             <tr>
 7                 <td></td>
 8                 <td>姓名</td>
 9                 <td>性别</td>
10                 <td>站驻地</td>
11             </tr>
12         </thead>
13         <tbody>
14             <tr>
15                 <td><input type="checkbox" name="" id="" class="name"></td>
16                 <td>xx1</td>
17                 <td>女</td>
18                 <td>四川</td>
19             </tr>
20             <tr>
21                 <td><input type="checkbox" name="" id="" class="name"></td>
22                 <td>xx1</td>
23                 <td>女</td>
24                 <td>四川</td>
25             </tr>
26             <tr>
27                 <td><input type="checkbox" name="" id="" class="name"></td>
28                 <td>xx1</td>
29                 <td>女</td>
30                 <td>四川</td>
31             </tr>
32             <tr>
33                 <td><input type="checkbox" name="" id="" class="name"></td>
34                 <td>xx1</td>
35                 <td>女</td>
36                 <td>四川</td>
37             </tr>
38             <tr>
39                 <td><input type="checkbox" name="" id="" class="name"></td>
40                 <td>xx1</td>
41                 <td>女</td>
42                 <td>四川</td>
43             </tr>
44         </tbody>
45     </table>
46 </body>

js:

 1 //表格插件的使用
 2  ;(function($){
 3    $.fn.extend({
 4         "Bctest":function(option){
 5             option = $.extend({
 6                 odd : "odd",
 7             even : "even",
 8             choose : "choose"
 9         },option);
10
11         $("tbody>tr:odd",this).addClass(option.odd);
12      $("tbody>tr:even",this).addClass(option.even);
13
14      $("tbody>tr",this).click(function(){
15               //1.实现复选框的选择
16               var ss = $(this).find("input").attr("checked");
17               if(!ss){
18                 $(this).find("input").attr("checked","checked");
19                 $(this).addClass(option.choose);
20               }else{
21                   $(this).find("input").removeAttr("checked");
22                   $(this).removeClass(option.choose);
23
24               }
25           });
26      return this;
27
28         }
29    })
30  })(jQuery);

引用方式:

$(function(){
         $("table").Bctest();
     })

css样式:

 1  .color{
 2             color:blue;
 3         }
 4         td{
 5             width:50px;
 6             font-size:12px;
 7             text-align:center;
 8         }
 9
10         .odd{
11             background: #f1f1f1;
12         }
13        .even{
14            background: #5f5f5f;
15        }
16
17        .choose{ background:#FF6500;color:#fff;}

时间: 2024-08-10 01:56:27

jquery插件学习相关(1)的相关文章

jQuery插件学习笔记

最近在研究jQuery插件,插件编写的目的是给已经有的一系列方法或函数做一个封装,以便在其他地方重复使用,方便后期维护. JQuery除了提供一个简单.有效的方式进行管理元素以及脚本,它还还提供了例外一种机制:即给核心模块增加自己的方法和额外的功能.通过这种机制,Jquery允许我们自己创建属于我们自己的插件,提高我们在开发过程中的效率. 虽然在jQuery命名空间中,我们禁止使用了大量的javaScript函数名和变量名.但是仍然不可避免某些函数或变量名将于其他jQuery插件冲突,因此我们习

JQUERY插件学习之jQuery UI

jQuery UI:http://jqueryui.com/ jQuery UI介绍: jQuery UI 是以 jQuery 为基础的开源 JavaScript 网页用户界面代码库.包含底层用户交互.动画.特效和可更换主题的可视控件.我们可以直接用它来构建具有很好交互性的web应用程序.所有插件测试能兼容 IE 6.0+, Firefox 3+, Safari 3.1+, Opera 9.6+, 和 Google Chrome. 组件构成 jQuery UI 主要分为3个部分:交互.微件和效果

jQuery插件学习(一)

由于项目开发需要,经常会用到一些jquery插件,但网上已有的插件常常又不能100%满足业务需求,所以就想自己能看懂插件的代码,进行一些功能上的改动和补充,或者能自己自定义插件就更好了.所以这段时间会对插件进行一些研究,现将学习的一些重要内容记录下来,供那些像我一样的初学者借鉴下.嘻嘻. (一)jQuery为开发插件提拱了两个方法 jQuery.extend(); 为扩展jQuery类本身.为类添加新的方法: jQuery.fn.extend();给jQuery对象添加方法: 它们之间的区别是:

jquery插件 - 学习笔记 (插件参数及函数的调用)

今天研究的是jquery插件的基本写法: 比如我打算写一个名为 ImageZoom 的插件 前台调用: <script src="ImageZoom.js"></script>$.ImageZoom({ imageSelector: ".imgBox img", //图片选择器 wrapSelector: ".list-images", //层选择器 allowCustomeZoom: true, //允许手动缩放 spe

Jquery 插件学习笔记

Jquery 插件 1表单验证插件--validate 该插件自带包含必填.数字.URL在内容的验证规则,即时显示异常信息,此外,还允许自定义验证规则,插件调用方法如下: $(form).validate({options}) 其中form参数表示表单元素名称,options参数表示调用方法时的配置对象,所有的验证规则和异常信息显示的位置都在该对象中进行设置. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&quo

JQuery插件datatables相关api

学习可参考:http://www.guoxk.com/node/jquery-datatables http://yuemeiqing2008-163-com.iteye.com/blog/2006942 1:导入包: URL:http://www.datatables.net/ 分别导入css和js文件 Html代码 <style type="text/css" title="currentStyle"> @import "css/demo_

jQuery插件学习之选项卡Tab

在网站开发中经常会用到选项卡功能,为了节省一下写代码时间,封装了一下tab插件,方便调用. 来看一下效果: tab-1 tab-2 tab-3 tabs-1-panel tabs-2-panel tabs-3-panel MyUI-tabs 创建选项卡组件 使用方法: html结构 <div id="tabs"> <ul> <li><a href="#tabs-1">tab-1</a></li>

jQuery插件学习基础

1.给jQuery添加全局的函数: $.zgz={  fn1:function(){ alert('我是刚设置的第一个全局函数') },fn2:function(){ alert('我是刚设置的第二个全局函数') } } $(function(){ $.zgz.fn1(); $.zgz.fn2(); }) 2.给jQuery添加拓展函数方法一: $.fn.zgz=function() { alert(this.length) } $(function(){ $('oDiv').zgz(); })

常用Jquery插件及相关笔记

1.js获取不到动态创建的元素:  $("").click(function(){ .... });      // 这样不行 必须改成这样: $(document).on("click", ".button", function () {....return false;//阻止事件冒泡 }); 2.js文件中有汉字,在页面上显示为乱码:用文本文件打开js文件,另存为,选择编码方式为UTF-8.