<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      最簡單的原生js和jquery插件封裝

        

      最近在開發(fā)過程中用別人的插件有問題,所以研究了一下,怎么封裝自己的插件。

      如果是制作jquery插件的話。就將下面的extend方法換成  $.extend 方法,其他都一樣。

      總結(jié)一下實(shí)現(xiàn)原理:

      將方法體封裝在一個(gè)自執(zhí)行的函數(shù)體里面,防止變量污染。

      默認(rèn)參數(shù)在options設(shè)置,extend方法有由for-in遍歷得到,使得參數(shù)為用戶制定參數(shù)。
      this.init是項(xiàng)目初始化,init,extend,event方法都是在demo對(duì)象的原型鏈上面的方法,方便調(diào)用。
      將自己的方法直接卸載event方法里面就可以,調(diào)用參數(shù)調(diào)用this.options.x 就可以使用。

      下列代碼封裝成js,引入,如何使用方法在下面.

      (function () {
              'use strict';
              var demo = function (options) {
                  //demo("options") 或者 new demo("options")都可以使用demo方法
                  if(!(this instanceof demo)){return new demo(options)};
      
                  // 參數(shù)合并 extend方法體在下面
                  this.options = this.extend({
                      "x": "1",
                      "y": "2",
                      "z": "3"
                  }, options);
                  this.init();
                  //初始化
              };
              demo.prototype = {
                  init: function () {
                      this.event();
                  },
                  // 參數(shù)合并方法體
                  extend: function (obj, obj2) {
                      for (var key in obj2) {
                          obj[key] = obj2[key];
                      //    確保參數(shù)唯一
                      }
                      return obj
                  },
                  event:function () {
                      var _this = this;
      
                      //方法調(diào)用前的回調(diào)
                      _this.options.open&&_this.options.open();
      
                      //此處執(zhí)行方法體,使用 this.options.x\this.options.y\this.options.z進(jìn)行訪問
      
                      //打印參數(shù)
                      console.log(this.options.x)
      
                      // 方法結(jié)束的回調(diào)
                      _this.options.close&&_this.options.close();
                  }
              }
              //暴露對(duì)象
              window.demo = demo;
          }());
      

      // 使用方法 demo("args") 和 new demo("args") demo({ "x": "111", "y": "3", "c":"ccc", open:function () { console.log("start") }, close:function () { console.log("end") } });

       

      posted @ 2018-06-13 14:36  徐大春  閱讀(3731)  評(píng)論(0)    收藏  舉報(bào)
      主站蜘蛛池模板: 国产在线精品福利91香蕉| 连城县| 中文字幕一区二区人妻| 无码中文字幕人妻在线一区| 欧美级特黄aaaaaa片| 18禁免费无码无遮挡不卡网站| 高清中文字幕国产精品| 成熟少妇XXXXX高清视频| 国产成人亚洲一区二区三区| 国产极品美女高潮无套| 国产精品老熟女一区二区| 精品国产一区二区三区香蕉| 日韩熟女精品一区二区三区 | 91精品91久久久久久| 日本毛茸茸的丰满熟妇| 亚洲开心婷婷中文字幕| 亚洲精品沙发午睡系列| 黄色大全免费看国产精品| 亚洲五月天综合| 福利一区二区视频在线| 国产中文字幕在线精品| 亚洲精品一区二区三区在| 亚洲国产欧美一区二区好看电影| 久久人与动人物a级毛片 | 亚洲一区成人av在线| 国产微拍一区二区三区四区| 日本偷拍自影像视频久久| 国产成人精品久久一区二区| 国产精品先锋资源在线看| 天堂俺去俺来也www色官网| 欧洲码亚洲码的区别入口| 国产激情国产精品久久源| 乱人伦人妻系列| 91一区二区三区蜜桃臀| 制服丝袜美腿一区二区| 国产三级a三级三级| 无线乱码一二三区免费看| 一区二区三区不卡国产| 嫩草欧美曰韩国产大片| 成人午夜激情在线观看| 少妇高潮喷水惨叫久久久久电影 |