0


我想写一个这样的组件(或插件)。
当我写:
var a = new myPluginName ('#myElement', { bla:bla});

$('#myElement').myPluginName();

它必须创建两个输入。就这样。我怎样才能做到这一点?你能给我一个这样的例子吗?或者任何想法都会有所帮助。

换句话说,我的目标是用我的组件创建两个输入。
谢谢你。

4

1 回答 1

2

您可以像这样创建自定义 jQuery 插件:

(function($){
 $.fn.extend({ 
     //plugin name - inpuX
     inputX: function(options) {
        var defaults = {
            width: 200,
            defaultPadding: 2,
            border: '2px solid red'
        };

        var options = $.extend(defaults, options);

        return this.each(function() {
              var o =options;
              var obj = $(this);                             

              $(obj)
                  .css('padding', o.defaultPadding)
                  .css('width', o.width)
                  .css('border', o.border)
                  .css('display', 'block');  
        });
    }
});
})(jQuery);

然后这样称呼它:

 $('#inputA').inputX({width: 150, defaultPadding:5, border: '1px dashed black'});
 $('#inputB').inputX({width: 200, defaultPadding:10});  

关于 html 中的元素:

<input id="inputA" type="text" />
<input id="inputB" type="text" />
于 2013-06-05T11:34:06.003 回答