我是成熟阶段项目的新手。其中一页有很多 JS 脚本和库,jQuery 被密集使用。仅在 IE7/8 中存在一个奇怪的错误:在页面脚本执行的中间某处 jQuery 对象变得未定义,因此其他一切都停止工作。
在 HTML 中间指定了两个脚本,比如说,像这样:
<script src="script1.js"></script>
<script src="script2.js"></script>
在script1
一个变量调用的末尾jQuery
包含一个预期的对象,但在script2
变量的开头jQuery
已经是未定义的。中间会发生什么?
请,任何想法在哪里寻找以及如何调试!
有没有办法控制脚本执行的后果并在一页上调试整个后果js(包括所有js包括)?
谢谢!:)
更新。我做了一个补丁:最后script1
我备份了变量:
var jQueryBackup = jQuery;
在script2
我恢复它的开头:
if (!jQuery && jQueryBackup) jQuery = jQueryBackup;
它使脚本工作,但没有解释变量如何在两个脚本之间变得未定义(我认为它实际上是在两行代码之间)。