• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

jQuery插件

武飞扬头像
小亮yayaya
帮助4

1.插件

    1.自定义插件
        ①$.extend
            【作用1】对象继承: $.extend(对象1,对象2)---->对象1继承对象2
            
            【作用2】扩展jQuery类方法:$.extend( {方法名:function(){ 方法体  } } )
  注意多个方法之间用逗号隔开
            
        ②$.fn.extend
            【作用】扩展jQuery对象方法:$.fn.extend( {方法名:function(){ 方法体  } } )
  注意多个方法之间用逗号隔开

            
    2.第三方插件
        ①表单验证
            插件名:jQuery Validation
            ②使用步骤
                【1】.下载jQuery插件验证库
                    jquery.validate.js
                【2】.将类库引入页面
                【3】.两种方式使用验证:
                        ①HTML标签属性方式
                    ②JS方式【推荐】
                                ①验证及错误信息:
                            $("表单元素").validate({
                                rules:{
                                 字段验证规则
                                    },
                                messages:{
                                字段错误信息
                                   }
                                })

                        ②错误样式:
                            表格元素  label.error{
                               样式
                            }
            ③验证规则说明
                见jQueryValidate规则.png
        

  1.  
     
  2.  
    <!DOCTYPE html>
  3.  
    <html>
  4.  
    <head>
  5.  
    <meta charset="utf-8">
  6.  
    <title></title>
  7.  
    <style type="text/css">
  8.  
    /* 设置错误信息的方式 */
  9.  
    #formRegister label{
  10.  
    color:red;
  11.  
    }
  12.  
    </style>
  13.  
    <script src="js/jquery-3.3.1.js" type="text/javascript" charset="utf-8"></script>
  14.  
     
  15.  
    <!-- 倒入jQuery插件 表单验证 -->
  16.  
    <script src="js/jquery.validate.js" type="text/javascript" charset="utf-8"></script>
  17.  
     
  18.  
    <script type="text/javascript">
  19.  
    /* jQuery第五次课☞插件 */
  20.  
    /*
  21.  
    * 区分java的类方法以及对象方法
  22.  
    * --类(静态)方法:例如DBHelper.getCon()
  23.  
    * --对象方法:StuDao sd = new StuDao(); sd.addStu();
  24.  
    *
  25.  
    * $.each(); 类方法
  26.  
    * $("#oDiv").show() 对象方法
  27.  
    *
  28.  
    * $("#oDiv").each(); 可以的
  29.  
    */
  30.  
     
  31.  
    $(function() {
  32.  
    /* 一、自定义插件 */
  33.  
    // $.extend(); $.fn.extend();
  34.  
     
  35.  
     
  36.  
     
  37.  
    //1.1 $.extend()实现对象继承
  38.  
    //案例1:两个对象的继承
  39.  
    // 定义一个人类对象,属性:name,sex
  40.  
    // var person = {"name":"东方不败","sex":"女"};
  41.  
    // var stu = {};
  42.  
    // console.log($.type(stu));
  43.  
    // console.log(stu);
  44.  
    // // 通过$.extend();为stu继承person中的所有属性
  45.  
    // $.extend(stu,person);
  46.  
    // console.log(stu);
  47.  
     
  48.  
    // 涉及到三个参数
  49.  
    // 第一个参数的对象会继承后面所有对象的属性。
  50.  
    // var person = {"name":"东方不败","sex":"女"};
  51.  
    // var stu = {"age":18};
  52.  
    // var wjq = {};
  53.  
    // console.log(person);
  54.  
    // console.log(stu);
  55.  
    // console.log(wjq);
  56.  
    // console.log("------------------");
  57.  
    // $.extend(wjq,stu,person);
  58.  
    // console.log(person);
  59.  
    // console.log(stu);
  60.  
    // console.log(wjq);
  61.  
     
  62.  
     
  63.  
    //1.2 $.extend()扩展jQuery类方法
  64.  
    $.extend({
  65.  
    // 此处可以通过键值对的形式创建jQuery的类方法 将来可以通过$直接调用
  66.  
    "sb":function(){
  67.  
    console.log("这是我自定义的类方法");
  68.  
    },
  69.  
    "nb":function(){
  70.  
    console.log(123);
  71.  
    }
  72.  
    });
  73.  
     
  74.  
    // $.sb();
  75.  
    // $.nb();$.extend();
  76.  
     
  77.  
    //案例2:求最大值(最小值)
  78.  
    $.extend({
  79.  
    // arguments参数 类似一个数组,存储参数的个数
  80.  
    // 扩展求最大值的类方法
  81.  
    "myMax1":function(a,b){
  82.  
    return a>b?a:b;
  83.  
    },
  84.  
    "myMax2":function(){
  85.  
    // console.log(arguments.length);
  86.  
    // 打擂台的思想
  87.  
    var max = arguments[0];//假设这个arguments数组中的第一个值为最大值
  88.  
    // console.log(arguments[0]);
  89.  
    for(var i = 0;i<arguments.length;i ){
  90.  
    if(max < arguments[i]){
  91.  
    max = arguments[i];
  92.  
    }
  93.  
    }
  94.  
    return max;
  95.  
    },
  96.  
    "myMin":function(){
  97.  
    // console.log(arguments.length);
  98.  
    // 打擂台的思想
  99.  
    var min = arguments[0];//假设这个arguments数组中的第一个值为最大值
  100.  
    // console.log(arguments[0]);
  101.  
    for(var i = 0;i<arguments.length;i ){
  102.  
    if(min > arguments[i]){
  103.  
    min = arguments[i];
  104.  
    }
  105.  
    }
  106.  
    return min;
  107.  
    }
  108.  
    });
  109.  
    // console.log($.myMax2(12,2,3,56));
  110.  
    // console.log($.myMax2(1));
  111.  
    // console.log($.myMax2());
  112.  
    // console.log($.myMax2(1,2,3,4,5,6,6,7));
  113.  
    // console.log($.myMin(22,3,2));
  114.  
     
  115.  
     
  116.  
     
  117.  
    //1.3 $.fn.extend()扩展jQuery对象方法
  118.  
    //案例3:实现全选效果
  119.  
     
  120.  
    $.fn.extend({
  121.  
    // 扩展jQuery对象方法
  122.  
    "mydemo":function(){
  123.  
    console.log("这是jQuery对象方法");
  124.  
    // alert(123);
  125.  
    }
  126.  
    })
  127.  
    // 如何调用jQuery对象方法
  128.  
    // $.fn.extend() 存储在加载函数内 作用域
  129.  
    // $.fn.mydemo();
  130.  
    // console.log($("#oDiv").mydemo());
  131.  
     
  132.  
     
  133.  
     
  134.  
    $.fn.extend({
  135.  
    // 全选的对象方法
  136.  
    "demo1":function(){
  137.  
    // 在对象方法中,$(this)代表将来谁调用了,就代表谁
  138.  
    // console.log($(this));
  139.  
    // $(this).each(function(){
  140.  
    // $(this).prop("checked",true);
  141.  
    // });
  142.  
    // jQuery的特性中有一个隐式迭代器
  143.  
    $(this).prop("checked",true);
  144.  
    },
  145.  
    "demo2":function(){
  146.  
    $(this).prop("checked",false);
  147.  
    }
  148.  
    });
  149.  
     
  150.  
     
  151.  
    $("#checkall").click(function(){
  152.  
    // 通过获取到复选框 然后调用对象方法demo1 设置所有复选框选中
  153.  
    $("input:checkbox").demo1();
  154.  
    });
  155.  
    $("#qxcheckall").click(function(){
  156.  
    // 通过获取到复选框 然后调用对象方法demo1 设置所有复选框选中
  157.  
    $("input:checkbox").demo2();
  158.  
    });
  159.  
     
  160.  
     
  161.  
    })
  162.  
     
  163.  
     
  164.  
    /* 二、第三方插件:表单验证插件 */
  165.  
    //案例4:表单验证(用户名、密码、确认密码、年龄、邮箱、网址url)
  166.  
    $(function(){
  167.  
     
  168.  
    // 获取表单标签调用插件激活的方法
  169.  
    $("#formRegister").validate({
  170.  
    // 插件的使用:2个模块,规则模块,错误信息模块
  171.  
    rules:{
  172.  
    // 账号必须有,不能为空
  173.  
    username:{
  174.  
    required:true,
  175.  
    minlength:10
  176.  
    },
  177.  
    email:{
  178.  
    required:true,
  179.  
    email:true
  180.  
    }
  181.  
    },
  182.  
    // 编写自定义错误信息
  183.  
    messages:{
  184.  
    // 账号必须有,不能为空
  185.  
    username:{
  186.  
    required:"账号不能为空",
  187.  
    minlength:"账号必须10以上"
  188.  
    },
  189.  
    email:{
  190.  
    required:"必填",
  191.  
    email:"邮箱格式不正确"
  192.  
    }
  193.  
    }
  194.  
    });
  195.  
    });
  196.  
    </script>
  197.  
    </head>
  198.  
    <body>
  199.  
    <button id = "oDiv">按钮</button>
  200.  
     
  201.  
    <h2>案例3:自定义插件实现全选功能</h2>
  202.  
    <button id="checkall">全选</button>
  203.  
    <button id="qxcheckall">取消全选</button>
  204.  
    <input type="checkbox" value = "1">1
  205.  
    <input type="checkbox" value = "2">2
  206.  
    <input type="checkbox" value = "3">3
  207.  
    <input type="checkbox" value = "4">4
  208.  
    <input type="checkbox" value = "5">5
  209.  
     
  210.  
    <h2>案例4:使用jQuery validation插件完成表单验证</h2>
  211.  
     
  212.  
    <form id="formRegister" action="index.html" method = "get">
  213.  
     
  214.  
    账号:<input type="text" name = "username">
  215.  
    <br>
  216.  
    密码 <input type="password" name = "password"/>
  217.  
    <br>
  218.  
    邮箱 <input type="text" name = "email">
  219.  
    <br>
  220.  
    <!-- 网上 搜索日期插件 -->
  221.  
    <input type="date">
  222.  
    <br>
  223.  
    <input type="submit" value = "注册">
  224.  
    </form>
  225.  
     
  226.  
     
  227.  
     
  228.  
     
  229.  
     
  230.  
    </body>
  231.  
    </html>
学新通

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhiajegi
系列文章
更多 icon
同类精品
更多 icon
继续加载