如何使用jQuery封装插件

jQuery官方给了一套对象级别开发插件的模板 。

如果使用的是 sublimeText 编辑器,推荐安装插件 jQuery,在文件中输入 plugin + Enter 会自动生成代码片段。

安装成功后在 js 文件中输入 plugin ,会出现下图所示内容:

选择 plugin (method basic),出现以下内容:

(function($) {
// What does the pluginName plugin do?
$.fn.pluginName = function(options) {

  if (!this.length) { return this; }

  var opts = $.extend(true, {}, $.fn.pluginName.defaults, options);

  this.each(function() {
    var $this = $(this);

  });

  return this;
};

// default options
$.fn.pluginName.defaults = {
  defaultOne: true,
  defaultTwo: false,
  defaultThree: 'yay!'
};

})(jQuery);

给插件起个名字,添加到红框内 ,在绿框内设置所需的参数,在蓝框内编写插件的主方法。

在 HTML 中调用该插件:

引入 jQuery 和插件 js 文件,选择 DOM 元素,调用插件。

可以参考下面这个封装插件的实例:
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <title>jQplugin</title>
</head>

<body>
    <div class="box">
        <input type="button" class="btn1" value="btn1">
        <input type="button" class="btn2" value="btn2">
    </div>
</body>

<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
// 插件封装
(function($) {
    // What does the pluginName plugin do?
    $.fn.pluginName = function(options) {

        if (!this.length) {
            return this;
        }

        var opts = $.extend(true, {}, $.fn.pluginName.defaults, options);

        this.each(function() {
            var $this = $(this);
            $(opts.btn1).click(function(event) {
                alert($(this).val());
            });
            $(opts.btn2).click(function(event) {
                alert($(this).val());
            });

        });

        return this;
    };

    // default options
    $.fn.pluginName.defaults = {
        btn1: null,
        btn2: null
    };

})(jQuery);

// 调用插件
$(function() {
    $(".box").pluginName({
        btn1: ".btn1",
        btn2: ".btn2"
    })
});
</script>

</html>

期待您的关注!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值