Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么我需要做$(document.body)来用Mootools元素方法扩展document.body?_Javascript_Internet Explorer_Mootools - Fatal编程技术网

Javascript 为什么我需要做$(document.body)来用Mootools元素方法扩展document.body?

Javascript 为什么我需要做$(document.body)来用Mootools元素方法扩展document.body?,javascript,internet-explorer,mootools,Javascript,Internet Explorer,Mootools,因此,在尝试让我的应用程序在最新的IE上运行后,发现IE不喜欢以下代码: document.body.getElement('.className'); Firefox和Chrome的响应还行,但IE上的document.body没有Mootools元素方法 查看之后,一些示例将document.body包装在$()中,以将其公开给Mootools方法 只是想知道为什么它在FireFox/Chrome中运行良好,但在IE中不会自动运行?这是因为IE公开(或者,呃,不公开)元素原型以进行扩展的方

因此,在尝试让我的应用程序在最新的IE上运行后,发现IE不喜欢以下代码:

document.body.getElement('.className');
Firefox和Chrome的响应还行,但IE上的
document.body
没有Mootools元素方法

查看之后,一些示例将
document.body
包装在
$()
中,以将其公开给Mootools方法


只是想知道为什么它在FireFox/Chrome中运行良好,但在IE中不会自动运行?

这是因为IE公开(或者,呃,不公开)元素原型以进行扩展的方式。在适当的浏览器中,
document.body
——以及DOM的一部分和从元素派生的所有其他内容——继承附加到
元素的方法。prototype


在旧IE中,这种情况不会发生(它继承自内置的proto,但它是只读的)。看任何关于为什么的话题-例如。

Hm,我明白了。我也这么想,但只是想确认一下。我不知道我只需要扩展document.body一次。有趣的。。。谢谢你的总结!
$(document.body);
document.body.addClass('bar').adopt(new Element('div'));