我需要在Internet Explorer 7中调试JavaScript。
不幸的是,它的默认调试器并没有为我提供太多信息。它告诉我错误出现的页面(不是特定的脚本)并给我一个行号。我不知道这是否与我的问题有关。
如果它可以将错误缩小到特定脚本上的行号(如Firebug可以),那就太好了。
是否有一个插件可以在IE7中调试JavaScript,就像Firebug在Firefox中一样?
谢谢!
Does IE7 have a “developer mode” or plugin like Firefox/Chrome/Safari?
答案 0 :(得分:90)
IE Dev Toolbar通常很有用,但遗憾的是不会进行脚本调试
答案 1 :(得分:41)
硬道理是:IE唯一优秀的调试器是Visual Studio。
如果您没有真正的交易资金,请下载免费的 Visual Web Developer 2008 Express Edition Visual Web Developer 2010 Express Edition。虽然前者允许您将调试器附加到已经运行的IE,但后者却没有(至少我以前使用过的版本不允许)。如果仍然如此,诀窍是创建一个带有一个空网页的简单项目,“运行”它(它启动浏览器),现在导航到你要调试的任何页面,然后开始调试。
微软在不同的活动中提供完整的Visual Studio,通常有许可证限制,但它们允许在家修修补补。检查他们的日程安排和免费赠品清单。
另一个提示:首先尝试使用其他浏览器调试您的Web应用程序。我在Opera上取得了巨大的成功。不知何故,Opera对IE及其漏洞的仿真非常接近,但调试器要好得多。
答案 2 :(得分:32)
这是一个关于如何使用此工具的良好创业公司。 HOW-TO: Debug JavaScript in Internet Explorer
答案 3 :(得分:27)
我找到了DebugBar。
不如Firebug好,但很接近。
答案 4 :(得分:25)
在IE7中,您可以通过在地址栏中粘贴以下内容来显示当前页面的firebug lite:
javascript:var firebug=document.createElement('script');firebug.setAttribute('src','http://getfirebug.com/releases/lite/1.2/firebug-lite-compressed.js');document.body.appendChild(firebug);(function(){if(window.firebug.version){firebug.init();}else{setTimeout(arguments.callee);}})();void(firebug);
答案 5 :(得分:7)
Microsoft脚本编辑器确实是一个选项,而我尝试过的那些更稳定的选项 - IE8中的调试器很棒但是出于某种原因,每当我启动开发人员工具时,IE8需要一段时间,有时候一分钟,检查我的页面的DOM树。之后,它似乎想在每次刷新时都这样做,这是一种折磨。
您可以检查Microsoft脚本编辑器中的变量内容:如果您在Debug>下查找窗口你可以打开局部变量检查,观察等。
另一个选择,Visual Web Dev虽然体积庞大,但效果相当不错。要进行设置,请执行此操作(从here中窃取):
UPDATE :顺便说一句,如果你遇到与IE8相比不错的调试器同样的减速,有一个解决方法 - 如果你遇到或让IE遇到错误,它会弹出“你想调试”对话并点击是,调试器会立即出现。看起来如果你“直接”进入调试模式,Dev Tools从不检查DOM。只有当你击中F12时才会这样做。
答案 6 :(得分:3)
Microsoft脚本编辑器可用于在IE中调试Javascript。它比Microsoft Script Debugger的bug少,但具有相同的基本功能,遗憾的是,它几乎仅限于逐步执行。我似乎无法检查变量或任何像这样的方便的东西。此外,它仅出于某些奇怪的原因与Office XP / 2003一起提供。更多信息here如果你是游戏。
我下载了Eugene Lazutkin提到的Visual Web Developer 2008 Express Edition,但还没有机会尝试。我建议在脚本编辑器/调试器之前尝试。
答案 7 :(得分:3)
它不是一个完整的调试器,但我的DP_DEBUG扩展提供了一些(我认为)usful功能,它们可以在IE,Firefox和Opera(9 +)中运行。
您可以“转储”复杂JavaScript对象(甚至是系统对象)的可视化表示,简化日志记录和计时。该组件提供了启用或禁用它的简单方法,以便您可以根据需要将调试器留在生产工作位置。
答案 8 :(得分:3)
IE8有很多改进的开发者工具。在此之前,最好首先为firefox编写javascript,然后使用alert()语句调试IE。
答案 9 :(得分:2)
IE9开发者工具对我有用。只需将“浏览器模式”菜单项设置为IE7。
答案 10 :(得分:1)
嘿,我遇到了同样的问题,发现了这个应用程序IETESTER。它非常棒,它是一个包含IE 5.5,6和7的应用程序。你现在拥有的IE版本并不重要。这允许您并排使用多个版本。
如果您在IE选项中启用了javascript调试并安装了Visual Studio,您甚至可以使用所有可用的调试选项(手表,条件断点等)调试VS中的javascript。
如果要在发生错误之前开始调试,只需要放行
debugger;
进入你的JS代码,这会带你进入VS,在这个语句之后开始调试。
对于测试JS代码的向后兼容性,这对我来说绝对令人惊讶。
答案 11 :(得分:0)
使用Internet Explorer 8.然后尝试使用开发人员工具。您也可以在兼容模式下基于IE 7进行调试
答案 12 :(得分:0)
FireBug Lite: http://getfirebug.com/firebuglite
答案 13 :(得分:0)
答案很简单。
答案 14 :(得分:0)
通过Javascript静态分析工具(如JSLint)运行代码可以捕获一些常见的IE7错误,例如对象定义中的尾随逗号。
答案 15 :(得分:0)
IE8开发人员工具可以切换到IE7模式
答案 16 :(得分:0)
如果你仍然需要调试IE 7,IE 11的仿真模式运行良好。
转到菜单:开发工具,然后进行模拟并进行设置。 它还提供错误行信息。
答案 17 :(得分:-1)
以下工具对我很有用:
为源,样式,DOM,脚本,HTML检查等功能提供便利的UI。它还会显示JS文件中的实际错误(哪一行,哪个文件)。
2)http://www.my-debugbar.com/wiki/CompanionJS/Installing
为IE6或IE7(最初不支持)提供控制台