zoukankan      html  css  js  c++  java
  • jQuery扩展插件

    jQuery有多好用,大家有目共睹的,但是有时候不是每个功能都是万能的,有时候我们需要实现自己的功能,jQuery提供了很好的拓展功能,我们可以去拓展插件,更好的利用jQuery

    查看官网,可知,有两个拓展的方式,

    第一:$工具方法

    第二:$对象的方法

    由于jQuery都是建立在自执行函数的,所以你自己写的插件必须也是自执行函数

    好了,我就实现了几个功能,得到最大最小值,全选是否

    废话少说辣,直接上来代码:

    //自定义的插件
    (function(){
        
        //扩展jQuery工具方法
        $.extend({
            min:function(a,b){
                return a < b ? a : b
            },
            max:function(a, b){
                return a > b ? a : b
            },
            leftTrim:function(string){
                return string.replace(/^s+/,'')
            },
            rightTrim:function(string){
                return string.replace(/s+$/,'')
            },
            
            
        })
        
        //$对象方法
        
        $.fn.extend({
            checkAll:function(){
                this.prop("checked",true)
            },
            unCheckAll:function(){
                this.prop("checked",false)
            },
            reverseCheck:function(){
                console.log(this)
                this.each(function(){
                    console.log(this)
                    this.checked = !this.checked
                })
                
            }
        })
        
        
    })()

    下面来几个例子来调用看看能不能实现啦,注意了,我们自定义的插件也是要建立在jQuery的插件之上的,所以顺序的事情大家就应该知道辣

    <!DOCTYPE html>
    <html>
    <head>
      <meta charset="UTF-8">
      <title>25_扩展插件</title>
      <style type="text/css">
        * {
          margin: 0px;
        }
    
        .div1 {
          position: absolute;
           100px;
          height: 100px;
          top: 50px;
          left: 10px;
          background: red;
        }
      </style>
    </head>
    <body>
    <input type="checkbox" name="items" value="足球"/>足球
    <input type="checkbox" name="items" value="篮球"/>篮球
    <input type="checkbox" name="items" value="羽毛球"/>羽毛球
    <input type="checkbox" name="items" value="乒乓球"/>乒乓球
    <br/>
    <input type="button" id="checkedAllBtn" value="全 选"/>
    <input type="button" id="checkedNoBtn" value="全不选"/>
    <input type="button" id="reverseCheckedBtn" value="反选"/>
    
    <!--
    1. 扩展jQuery的工具方法
      $.extend(object)
    2. 扩展jQuery对象的方法
      $.fn.extend(object)
    -->
    <script src="../../js/jquery-1.10.1.js" type="text/javascript"></script>
    <script src="../../js/my_plugin.js" type="text/javascript"></script>
    <script type="text/javascript">
      /*
       需求:
       1. 给 $ 添加4个工具方法:
         * min(a, b) : 返回较小的值
         * max(c, d) : 返回较大的值
         * leftTrim() : 去掉字符串左边的空格
         * rightTrim() : 去掉字符串右边的空格
       2. 给jQuery对象 添加3个功能方法:
         * checkAll() : 全选
         * unCheckAll() : 全不选
         * reverseCheck() : 全反选
       */
      var str = 'rainbow cai   '
      
    //console.log($.min(3,5))
    //console.log($.max(3,5))
    //console.log($.leftTrim(str))
    //console.log($.rightTrim(str))
    
    var $items = $(":checkbox[name='items']")
    $("#checkedAllBtn").on("click",function(){
        $items.checkAll()
    })
    
    $("#checkedNoBtn").click(function(){
        $items.unCheckAll()
    })
    
    $("#reverseCheckedBtn").click(function(){
        $items.reverseCheck()
    })
    
      
      
    
    </script>
    </body>
    </html>

    好啦好啦,最近太忙,已经很久没有继续更博了,接下来的时间希望可以继续更博,不断的监督自己。

  • 相关阅读:
    ELK学习实验004:Elasticsearch的简单介绍和操作
    ELK学习实验003:Elasticsearch 集群安装
    ELK学习实验002:Elasticsearch介绍及单机安装
    ELK学习实验001:Elastic Stack简介
    Eclipse 笔记
    自动
    Kali 无线网络
    安全和匿名
    Java 异常处理
    Java 构造结构私有化
  • 原文地址:https://www.cnblogs.com/caicaihong/p/9516251.html
Copyright © 2011-2022 走看看