`

javascript加载顺序

    博客分类:
  • dojo
阅读更多
今天测试用doji动态生成一个iframe,将内容写入里面,结果测试发现存在不同的结果
代码如下:
<html style="height: 100%; width: 100%; margin: 0;">
  <head>
  <script src="http://127.0.0.1:8080/pf/skins/default/javascript/fd/dojo/dojo.js"></script>

<script>
require([
    'dojo/parser',
    'dojox/html/_base',
    'dojo/domReady!'
], top.loading_edit_context_0);

</script>
</head>
<body>
</body>
</html>

结果发现在火狐地下可以正常运行,而在ie下就不可以,提示错误是没有发现require,经过添加调试代码发现,首先执行了下面的代码,然后在执行dojo.js,也就会说在ie中虽然dojo代码是在前面记载,但是执行的时候是后执行的,执行顺序出现了问题,后经过测试发现
firefox正常
ie提示错误
chrome提示错误
safari提示错误
opera正常也就是说这种情况下不同的浏览器是与不同的实现,需要屏蔽个浏览器的区别,执行策略:1.火狐和opera是没有问题的,IE可以在标签上添加 defer="defer"属性,chrome,估计只能通过Onload事件处理了。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics