我使用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);
},
我很确定这是有效的,但我觉得这很脏。
答案 0 :(得分:0)
试试这段代码,我还没有测试过。但值得一试。如果不起作用,请告诉我,我会删除。
Plugin.prototype = {
init: function () {
var myThis=this;
console.log("init");
var overlay = jQuery("<div/>", {
id: "ModalOverlay",
click: function () {
myThis.Mymethod();
}
});
},
Mymethod: function () {
alert(this._name);
alert(this.options);
alert(this.options.overlay);
console.log(this.options.overlay);
}
};