最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

推薦一款jQuery插件模板

 更新時間:2015年01月09日 09:40:08   投稿:hebedich  
這篇文章主要給大家推薦一款jQuery插件模板,這是本人最喜歡的一款了,原因很簡單,使用方便,可選擇性也比較多。有需要的小伙伴參考下吧

我使用jQuery已經(jīng)有相當長的時間了,并且我會常常為它寫一些插件(plugin)。我嘗試過用不同的方式去寫,現(xiàn)在這個模板是我最喜歡的:

復制代碼 代碼如下:

;(function($) {
  // multiple plugins can go here
  (function(pluginName) {
    var defaults = {
      color: 'black',
      testFor: function(div) {
        return true;
      }
    };
    $.fn[pluginName] = function(options) {
      options = $.extend(true, {}, defaults, options);
            
      return this.each(function() {
        var elem = this,
          $elem = $(elem);
 
        // heres the guts of the plugin
          if (options.testFor(elem)) {
            $elem.css({
              borderWidth: 1,
              borderStyle: 'solid',
              borderColor: options.color
            });
          }
      });
    };
    $.fn[pluginName].defaults = defaults; 
  })('borderize');
})(jQuery);
 
//下面是用法
$('div').borderize();
$('div').borderize({color: 'red'});

  以下是我喜歡這種模板的原因

  1. 你仍然可以訪問里面的默認選項,即便它被重寫了(簡單地通過父屬性的訪問)

  2. 通過修改pluginName即可更改插件的名字。(這種方式對代碼壓縮也非常有利)

  第#1點非常強大,比如說我們希望復寫這個方法,但是仍然希望保留原來的方法,我們可以看下面的例子:

復制代碼 代碼如下:

$('.borderize').borderize({
    testFor: function(elem) {
        var $elem = $(elem);
        if (elem.is('.inactive')) {
            return false;
        } else {
            // calling "parent" function
            return $.fn.borderize.defaults.testFor.apply(this, arguments);
        }
    }
});
We can even do this with regular properties like this
 
var someVarThatMayBeSet = false;
/* code ... */
 
$('.borderize').borderize({
    color: someVarThatMayBeSet ? 'red' : $.fn.borderize.defaults.color
});

小伙伴們,你們也會喜歡上這款jQuery插件模板的吧,他實在是太靈活了。

相關(guān)文章

最新評論

远安县| 神池县| 桐乡市| 苏尼特左旗| 法库县| 都匀市| 寿阳县| 石渠县| 综艺| 惠安县| 山阳县| 德州市| 梁河县| 葫芦岛市| 哈尔滨市| 颍上县| 宣恩县| 保靖县| 金堂县| 罗定市| 双柏县| 龙南县| 凤台县| 岳池县| 岢岚县| 健康| 栾城县| 钟祥市| 临颍县| 阿拉尔市| 姚安县| 海宁市| 永德县| 县级市| 丹江口市| 黑山县| 修文县| 临泽县| 会泽县| 南部县| 巴楚县|