我只在IE中遇到了与require.js插件有关的错误。

我在require.js中有以下代码(第1061行):

 if (plugin.normalize) {


IE 8返回此错误:


消息:“ normalize”为空或不是对象

线:1061
字符:25


我检查了调试器,并且插件对象存在,normalize未定义。在javascript中,这应评估为“假”,并在if-condition失败。但是,由于某些原因,IE会抛出此错误,并且无法正确加载我的页面。有人知道为什么会这样吗?

具有讽刺意味的是,如果我将1061行更改为:

if (plugin.normalize !== undefined && plugin.normalize !== null && plugin.normalize !== false) {


然后IE8成功运行了代码...问题是,这应该是等效的代码,并且我不能为了避免此类IE错误而更改诸如require.js之类的第三方程序包。

最佳答案

我有一个类似的问题,可以通过确保自己没有尾随的昏迷来解决,并且我的道路还不错。

此处有更多详细信息:https://github.com/jrburke/requirejs/issues/299

09-10 05:36
查看更多