1

我有一个在现代网络浏览器和 IE10 中运行的复杂网络应用程序。我现在正在旧版本的 IE7 中进行测试,并遇到了一个阻止页面完全加载的错误。我可以在屏幕上看到的唯一错误是:

 SCRIPT5022: Syntax error, unrecognized expression: 
  jquery.min.js, line 3 character 14659  

这指向:

{throw new Error("Syntax error, unrecognized expression: "+a)}

我不知道我的 javascript 的哪一部分触发了这个。代码库很大,所以我什至不知道从哪里开始。有什么技巧或标准方法可以帮助我吗?在 Chrome、Firefox、Safari(最新版本)或 IE10 中未报告任何错误或问题。我在 ie 7 模式下使用 IE10 ......问题也存在于 ie 7 在虚拟机中运行。

谢谢。

编辑:我从这个来源运行 jQuery 1.7:http: //ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js

4

2 回答 2

1

如果您的代码库太大而无法单步执行,直到找到导致错误的 jQuery 操作,请尝试在 jQuery 选择器中搜索TAB-character。

使用 jQuery 1.7.1 时,我遇到了同样的问题(仅在 IE7 中)。我找到了一个包含 - 字符的选择器TAB(在选择器的中间),一旦删除,一切都很好。

于 2013-11-04T11:00:34.623 回答
0

除了 Ian 关于 jquery v2 的观点之外 - 我的理解是行号是相对于页面而言的,所有包含的 JS 文件都只是内联。

因此,获取您的浏览器视图源代码,然后对于您拥有的每个脚本 src,将其删除并复制到实际的 JS 文件内容中(我猜可能包含在脚本标签中??)。

祝你好运!

顺便说一句,在 IE7 模式下运行的 IE8 或 IE9 中可能值得尝试,因为它们有更好的调试器。

于 2013-05-09T15:05:22.870 回答