读<jQuery 权威指南>[5]-插件

简介:

一、说明

jQuery插件官网:http://plugins.jquery.com/

使用插件时引用顺序:插件引用要位于主jquery库之后。

二、插件应用实例

演示插件jquery.validate.js的使用方法:

①引用jQuery主库和validate插件。

注意:

  • jQuery主库要先于插件引用;
  • 如果想显示中文错误提示,还需要引用jquery.validate.messages_cn.js。
复制代码
<script type="text/javascript" 
            src="Jscript/jquery-1.4.2.js">
    </script>
    <script type="text/javascript" 
            src="Js-7-1/jquery.validate.js">
    </script>
    <script type="text/javascript" 
            src="Js-7-1/jquery.validate.messages_cn.js">
    </script>
复制代码
复制代码
<form id="frmV" method="get" action="#">
     <div class="divFrame">
         <div class="divTitle">
              请输入下列资料
         </div>
         <div class="divContent">
              <div>
              标题:<br />
                  <input id="title" name="title"
                         type="text" class="txt" />
              <font color="red">*</font><br />
              <span></span>
              </div>
              <div>
         </div>
      </div>
         <div class="divBtn">
              <input id="sbtUser" type="submit" 
                     value="提交" class="btn" />
         </div>
     </div>
     </form>
复制代码

②设置验证规则,注意name要与控件对应。

复制代码
<script type="text/javascript">
        $(function() {
            $("#frmV").validate(
              {
                  /*自定义验证规则*/
                  rules: {
                      title: { required: true, minlength: 5,maxlength:18 }
                  },
                  /*错误提示位置*/
                  errorPlacement: function(error, element) {
                      error.appendTo(element.siblings("span"));
                  }
              }
            );
        })
    </script>
复制代码

三、自定义插件

1.插件分类:

  • 封装方法插件:对象插件
  • 封闭函数插件:类插件

2.插件开发注意事项

①插件命名格式: jquery.[插件名].js;

②所有插件都应该以分号;开头,避免压缩插件之后出现错误;为了保证JQuery的链式写法正确性,插件本身必须返回一个jQuery对象;

③在插件内部,this表示选择器选中的对象,和平时的this含义不太相同;

④为了避免冲突,在编写插件时尽量使用jQuery而不是$符号;

⑤对象级别插件所有方法都依附于jquery.fn主体对象;类级别插件所有方法都依附于jquery对象。

⑥编写对象级别插件是用jQuery.fn.extend()方法进行扩展,编写类级别插件时是用jQuery.extend()方法进行扩展。

2.对象插件示例:

插件功能比较简单,当鼠标经过菜单项时自动切换背景颜色。

首先定义插件jquery.color.js

复制代码
; (function($) {
    $.fn.extend({
          "focusColor":function (color) {
              var def_col = "#ccc";
              var list_bg = "#fff";
              color = (color == undefined )? def_col : color;
              $(this).find("li").each(function() {
                  $(this).mouseover(function() {
                      $(this).css("background-color", color);
                  }).mouseout(function() {
                      $(this).css("background-color", list_bg);
                  });
              });
              return $(this);
          }
    });
})(jQuery);
复制代码

调用:

复制代码
<script type="text/javascript">
        $(function() {
            $("#u1").focusColor("green");//调用自定义的插件
        })
    </script>
复制代码

3.类插件示例:

定义类级别插件jquery.calc.js。

复制代码
;$(function () {
    $.extend({
        "addNum": function (a, b) {
            a = a || 0;
            b = b || 0;
            return parseInt(a) + parseInt(b);
        }
    });
})(jQuery);
复制代码

调用:

复制代码
<script type="text/javascript">
        $(function() {
            $("#Button1").click(function() {
                $("#Text3").val(
                $.addNum($("#Text1").val(),
                         $("#Text2").val()));
            }); 
        })
    </script>
复制代码





相关文章
|
6月前
|
JavaScript
Jquery插件知识之Jquery.cookie实现页面传值
Jquery插件知识之Jquery.cookie实现页面传值
36 0
|
7月前
|
JavaScript
jQuery 插件自用列表
jQuery 插件自用列表
29 0
|
3月前
|
JavaScript
jQuery图片延迟加载插件jQuery.lazyload
jQuery图片延迟加载插件jQuery.lazyload
|
3月前
|
JavaScript 数据可视化 前端开发
jQuery-JS插件-第9次课-使用插件让领导对你刮目相看-附案例作业
jQuery-JS插件-第9次课-使用插件让领导对你刮目相看-附案例作业
19 0
|
3月前
|
JavaScript 前端开发
开发jQuery插件这些就够了
开发jQuery插件这些就够了
26 0
|
8月前
|
JavaScript
jQuery编写插件的两种方法
jQuery编写插件的两种方法
57 0
|
4月前
|
JavaScript 前端开发 安全
jQuery 第十一章(表单验证插件推荐)
jQuery 第十一章(表单验证插件推荐)
54 1
|
5月前
|
JavaScript
jQuery年月日(年龄)选择插件
jQuery年月日(年龄)选择插件
28 0
|
5月前
|
前端开发 JavaScript
Jquery前端分页插件pagination同步加载和异步加载
Jquery前端分页插件pagination同步加载和异步加载
43 0
|
5月前
|
JavaScript 前端开发 数据格式
Jquery前端分页插件pagination使用
Jquery前端分页插件pagination使用
62 1