我想覆盖原生的document.write
函数,所以我这样做:
HTMLDocument.prototype.write = function(arg) {
alert('Do Something!');
};
这适用于IE9以外的每个浏览器,它会抛出以下错误:
'HTMLDocument' is undefined
它甚至适用于IE 8.如何在IE9中扩展文档对象?
答案 0 :(得分:0)
显然,在IE 9即将发布之前的某个地方HTMLDocument
被替换为Document
,在IE 10中也是如此。但是,在IE 11中,两个对象都返回并且返回 true :
Document.prototype.write === HTMLDocument.prototype.write
即使Document和HTMLDocument引用了不同的对象。因此,为了做你想要的IE 9和IE 10(我没有检查IE 8的行为),你可以做类似的事情:
Document.prototype.write = function(arg) {
alert('Do Something!');
};