JavaScript Object.prototype的值

时间:2010-07-23 03:32:28

标签: javascript prototype object prototypejs

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

例如,如果我这样做

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

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

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

1 个答案:

答案 0 :(得分:1)

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