繁体   English   中英

在IE8中扩展Element.prototype时出现“对象不支持方法”错误

[英]“Object doesn't support method” error when extending Element.prototype in IE8

我了解IE8支持Element对象的扩展。 我尝试了一个简单的示例,它可以在Google Chrome浏览器中使用,但不能在IE8中使用。 这是我的代码, 这是查看我的代码的jsfiddle

HTML

<div id='test'>Hi</div>

JavaScript的

Element.prototype.test = function(){
  alert('yup');
}

document.getElementById('test').test();

错误

//jsfiddle.net => Object doesn't support property or method 'test'
//local test => 'Element' is undefined

我究竟做错了什么?


UPDATE

好的,关于本地错误,看来IE8不喜欢我的<!DOCTYPE>标记。 所以我找到了另一个。 = p IE8在此类方面非常严格。 如果某个元素不是有效的HTML,则IE8不会在document.getElementsByTagName()东西中使用它。

MooTools会覆盖基线Element

查看

var e = document.getElementById('test');
console.log(e instanceof Element);

如果启用MooTools,则返回false,否则应返回true。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM