我知道IE8支持Element
对象的扩展。我尝试了一个简单的例子,它适用于谷歌浏览器,但不适用于IE8。这是我的代码and here is a jsfiddle to see my code:
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
我做错了什么?
<小时/> 的更新
好的本地错误,似乎IE8不喜欢我的<!DOCTYPE>
标签。所以我发现了另一个。 = p IE8对此类事情非常严格。如果某个元素不是有效的HTML,则IE8不会在document.getElementsByTagName()
。
答案 0 :(得分:1)
MooTools会覆盖基线Element
。
结帐
var e = document.getElementById('test');
console.log(e instanceof Element);
带有MooTools的返回false,除了MooTools,它应该返回true。