JQuery插件机制

JQuery插件机制

插件:增强JQuery的功能
  1. 实现方式:
    1. $.fn.extend(object)   (对象)
      增强通过JQuery获取的对象的功能  $("#id")
    2. $.extend(object)       (全局)
      增强JQeury对象自身的功能   $/jQuery

JQuery对象进行方法扩展

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>01-jQuery对象进行方法扩展</title>
    <script type="text/javascript" src="../../js/jquery-3.3.1.min.js"></script>
    <script type="text/javascript">
        //使用jquery插件给JQuery对象添加2个方法 check()选中所有复选框,uncheck()取消选中所有复选框
        //定义JQuery的对象插件
        $.fn.extend({
            //定义了一个check方法,所有的JQuery对象都可以调用该方法
            check:function () {
                //让复选框选中
                //this:调用该方法的JQuery对象
                this.prop("checked",true)
            },
            uncheck:function () {
                //让复选框不选中
                this.prop("checked",false)
            }
        });
        $(function () {
            //获取按钮
            //复选框对象.check();
            $("#btn-check").click(function () {
                //获取复选框对象
                $("input[type='checkbox']").click();
            });
            $("#btn-uncheck").click(function () {
                //获取复选框对象
                $("input[type='checkbox']").uncheck();
            });
        });
    </script>
</head>
<body>
<input id="btn-check" type="button" value="点击选中复选框" onclick="checkFn()">
<input id="btn-uncheck" type="button" value="点击取消复选框选中" onclick="uncheckFn()">
<br/>
<input type="checkbox" value="football">足球
<input type="checkbox" value="basketball">篮球
<input type="checkbox" value="volleyball">排球
</body>
</html>

 

JQuery全局进行方法扩展

对全局方法扩展2个方法,扩展min方法:求2个值的最小值;扩展max方法:求2个值最大值

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>01-jQuery对象进行方法扩展</title>
    <script type="text/javascript" src="../../js/jquery-3.3.1.min.js"></script>
    <script type="text/javascript">
        //对全局方法扩展2个方法,扩展min方法:求2个值的最小值;扩展max方法:求2个值最大值
        $.extend({
            max:function (a,b) {
                //返回两个数中的最大值
                return a>=b ? a:b;
            },
            min:function (a,b) {
                //返回两个数中的最小值
                return a<=b ? a:b;
            }
        });
        //调用全局方法
        var max = $.max(2,3);
        alert(max);
        var min = $.min(9,4);
        alert(min);
    </script>
</head>
<body>
</body>
</html>

 

posted @ 2022-08-20 11:49  魔光领域  阅读(15)  评论(0编辑  收藏  举报