0

http://fr.jqueryboilerplate.com/を使用した次の JavaScript コードがあります。

;(function ($, window, document, undefined) {
  var pluginName = "PluginName",
    defaults = {
      overlay: {
        BgColor: "#000",
        opacity: "0.6"
      }
    };
  function Plugin(element, options) {
    this.element = $(element);
    this.options = $.extend({}, defaults, options);
    this._defaults = defaults;
    this._name = pluginName;
    this.init();
  }
  Plugin.prototype = {
    init: function () {
      console.log("init");
      var overlay = jQuery("<div/>", {
        id: "ModalOverlay",
        click: function () {
          Plugin.prototype.Mymethod();
        }
      });
    },
    Mymethod: function () {}
  };

誰でも、変数にアクセスする方法を教えてくれます。

function Plugin(){}

から

Mymethod: function() {}

たぶんそのようなもの:

ストアオブジェクトを追加

Plugin.prototype = {
  store: {
    _overlay: null
  }

init 関数へ

Plugin.prototype.store._overlay = overlay;

そして、次のようにアクセスします:

Mymethod: function () {
  console.log(Plugin.prototype.store._overlay);
},

私はそれが仕事だと確信していますが、それは非常に汚いと思います.

4

1 に答える 1