当FF正常时,如何调试损坏的IE 8

时间:2012-04-28 02:13:26

标签: javascript internet-explorer debugging

我花了很长时间将很多的Javascript添加到我们的前端。我一直用FF(11.0)做到这一点。我刚刚将所有更改(在我的本地沙箱上工作正常)提交给我们的开发服务器,并且QA测试人员注意到在IE 8中查看页面时缺少整个div。

这个div用jQuery做各种奇特的东西,允许用户扩展/折叠手风琴面板,并从扩展的手风琴等拖放图像。

现在是晚上10点,在我解决这个休息之前我不能上床睡觉。我已经尝试使用IE附带的IE开发工具栏(并通过F12按钮访问),希望它能捕获一些不好的Javascript但是nodda。对于Firebug来说也是如此。 JS看起来非常好,只是IE很顽固。

开始弄清楚为什么IE不会显示我的jQuery-heavy div会采取什么步骤?它实际上并不像逐个退出更改那么简单,因为我的代码在JS页面上散布并交织了函数和调用。提前感谢任何正确方向的指针或推动。

1 个答案:

答案 0 :(得分:2)

F12开发人员工具

如果使用得当,F12开发人员工具通常不仅能够在整个代码中发现奇怪的问题。您可以审核应用程序以查找长时间运行的进程,添加断点并在页面的生命周期中查看变量。

IE Compat Inspector

另一个很棒的工具是IE Compat Inspector,它将检查您的代码并查找可能在Internet Explorer中破坏您网站的任何类型的模式或用法。您可以在http://blogs.msdn.com/b/ie/archive/2011/04/27/ie9-compat-inspector.aspx用于Internet Explorer 9在线查找,在http://blogs.msdn.com/b/ie/archive/2012/01/20/ie10-compat-inspector.aspx用于Internet Explorer 10。

ECMAScript Compat Charts& Polyfills

我们经常会混淆哪些浏览器支持哪些功能。它有助于保持良好的compat chart,因此您知道IE中是否支持classList。如果您发现某些内容未在Internet Explorer中实现,则应该找到一个polyfill。幸运的是,there are many

Web调试代理

这些只是您可以用来在Internet Explorer中对您的网站进行故障排除的一些工具。最后是Fiddler 2(一个网络调试代理),它允许你站在客户端和服务器之间,在两种方式都篡改数据。在调试脚本时,我通常使用它来代替实时服务器文件来提供自定义文件。但是,如果您现在可以直接访问服务器,那么这不是必需的。