我试图弄清楚如何为数据集制作一个 polyfill ,我想我需要使用get和set来定义函数。尝试将它们添加到时,get/set 的语法将如何Element.prototype
?MDN 上的示例显示了一个局部变量,但是您如何使用它们来添加Element.prototype
?
Object.defineProperty {Element.prototype, "dataset",
get: function() { /* return value */ }
, set: function(newVal) { /* set somehow w/ setAttribute or jQuery */ }
}
我想将 getter/setter 方法路由到$.attr()上面的示例,我只是将它们与.data()或(更好)本机setAttribute
和getAttribute
. 这里有一个用于数据集的 polyfill,但它只支持符合标准的浏览器(不是 IE8 或更低版本)。我想做一个避免使用的__defineGetter__
(我认为这是 IE8 中的问题)。我认为defineProperty可能是合适的方法,我可以使用ES5 Shim来填充它。我将如何使用defineProperty来做到这一点?