【问题标题】:JavaScript Object.prototype by valueJavaScript Object.prototype 按值
【发布时间】:2010-07-23 03:32:27
【问题描述】:

我想做类似Object.prototype.dataTransfer = new DataTransfer(); 的事情,但我希望每个新对象都有自己的dataTransfer。我该怎么做?

例如,如果我这样做

var a = new Object(); var b = 新对象(); Object.prototype.dataTransfer = new Object(); a.dataTransfer.prop = 1; b.dataTransfer.prop = 2;

我希望 a.dataTransfer.prop 仍然是 1,而不是 2。

对于上下文,我正在尝试破解 WebKit 和 IE,以便拖放事件的 .dataTransfer 对象正常工作。

【问题讨论】:

  • 附带说明,您应该永远扩展Object.prototype
  • ^ 如果您使用某人(另一个人)无法处理的蹩脚代码:D

标签: javascript prototype object prototypejs


【解决方案1】:

通常你会在构造函数中添加它,但由于你想要扩展一个宿主对象(HTMLDomElement),你想要的实际上是不可能的。但是,如果您将问题的定义扩展到像这样的特定实现细节之外,可能还有另一种方法, 例如具有不同(可能)面向用户的 API 的库,其工作方式取决于它所在的浏览器,成功地抽象了浏览器并提供了统一的 API。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-22
    • 2014-12-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    相关资源
    最近更新 更多