所以我有一个相当大的web应用程序运行Dojo 1.8。一切工作正常在多个版本的IE和Firefox。我决定给1.9一个去,并将我的依赖从1.8改为1.9。 Firefox在第一次运行时没有任何显着变化,运行良好。然而,IE 8和9版本都没有做任何事情。所有静态HTML内容(和动态jsp内容)都很好,所有ajax调用来获得所需的模块似乎都可以正常工作,但解析器表现得像它并没有被调用过。控制台中没有错误,警告或任何内容。使用Dojo 1.9,所有解析在IE中失败
我一直跟我的道场的配置,这是没有什么特别的比赛:
var dojoConfig = {
baseUrl: "js/",
async: true,
has: {
"dojo-firebug": true,
"dojo-debug-messages": true
},
parseOnLoad: false,
isDebug: true,
tlmSiblingOfDojo: false,
packages: [
{ name: "dojo", location: "dojo-release-1.9.0/dojo" },
{ name: "dijit", location: "dojo-release-1.9.0/dijit" },
{ name: "dojox", location: "dojo-release-1.9.0/dojox" }
]
};
我发现,如果我注释掉异步:真的,IE突然开始工作了。你可以想象,我真的想要异步真实。为什么这个绊倒IE?我希望我已经提供了足够的信息。
编辑:我被包括在标签的一个名为common.js文件,它看起来大致是这样的底部的脚本标签调用解析器:
require([
"dojo/parser",
"dojo/ready"
],
function(parser, ready){
ready(function(){
parser.parse();
});
});
我试着换出道场/准备好dojo/domReady!并把解析器解压出来(function(){block也是一样的结果。
希望我有一个解决方案给你。我只能说IE是那里最大的垃圾。它只给我一些问题。我创建的特殊解决方法始终与IE相关。无论如何,这里的亮点是,我一直能够找到一个解决方法,为IE垃圾... – GoinOff 2013-05-14 13:55:10
你/你在哪里调用解析器? – BuffaloBuffalo 2013-05-14 14:27:30
感谢您的意见,我对Dojo 1.9和IE10 – 2013-05-14 15:21:19