假设有以下 JavaScript 代码(从下面引用的插件中提取):
var AutosizeInput = (function () {
function AutosizeInput(input, options) {
var _this = this;
this._input = $(input);
this._options = options;
}
Object.defineProperty(AutosizeInput.prototype, "options", {
get: function () {
return this._options;
},
enumerable: true,
configurable: true
});
}
插件的完整代码位于:https://github.com/MartinF/jQuery.Autosize.Input/blob/master/jquery.autosize.input.js
据我所知,调用Object.defineProperty将无法在IE8上工作,因为它不是DOM对象。
这个判断准确吗?如果是的话,重写getter(和setter)以兼容IE8的最佳方法是什么?
options
而非_options
? - Bergi_defineGetter_
在 IE8 中是否可用吗? - markasoftware