我参与了一个网站的开发,该网站有大量用户通过适用于Windows的 AOL Desktop v9.7 查看我们的网站 - 它自己生成浏览器窗口。在调试时,我没有通常可以调用的工具(例如Chrome的开发者控制台; Firebug; MSIE的 F12开发人员工具)。
当在AOL桌面内时,我似乎没有任何这些,或类似的东西。是否有我可以调用的开发者模式或控制台,发掘?
答案 0 :(得分:8)
在我的评论中,我的意思是,您可以使用一个非常不错的JavaScript调试器,其中包含Visual Studio( [EDITED] 包括免费版)的手动DOM检查功能。有了一些技巧,它也可以用于AOL桌面(这是一个有趣的软件,BTW :)当然,这与IE的F12工具不同,它缺乏像visual DOM这样的交互功能树,CSS跟踪等。但它仍然允许单步执行代码,观察本地和对象,计算表达式和访问DOM元素。它是一个非常宝贵的工具,我将它用于托管WebBrowser控件的项目。毕竟,这也是AOL所做的。无论如何,如果您已经熟悉这个,请给这个帖子一个微笑并忽略它。否则,请继续阅读:)
我使用IE9,Visual Studio 2012 Pro(Update3)和最新的AOL Desktop 9.7在Win7 SP1 VM下测试了以下内容。 [已编辑] 它也适用于免费版Visual Studio 2012 Express for Desktop,Update3。
唯一的主要障碍是在进入调试器后大约20秒内 AOL浏览器用于重启,从而与调试器断开连接。解决方法是关闭AOL并删除以下文件:
"C:\Program Files (x86)\AOL Desktop 9.7\"
shellmon.exe
shellmon.ini
shellrestart.exe
然后,我使用以下基本HTML文件进行调试(作为" debug.html"在localhost的根目录中):
<!doctype html>
<html>
<head>
<title>Debugger Test Page</title>
<script>
function debugPrompt()
{
if (confirm("debug?"))
{
debugger; // breakpoint
alert("after debugger");
}
}
document.onkeydown = function()
{
if (event.altKey && event.ctrlKey && event.keyCode === 'D'.charCodeAt(0))
{
event.cancelBubble = true;
debugPrompt();
return;
}
}
</script>
</head>
<body>
<button onclick="debugPrompt()">Debug</button>
</body>
</html>
这是我完全做的事情:
Ran AOL并导航到localhost / debug.html。
运行Visual Studio并附加到aolbrowser.exe
进程(使用脚本作为目标类型的代码),通过调试/附加到进程菜单:
debugger;
代码行的VS Debugger中。此时,所有常用的调试功能都可用。请注意立即窗口面板和 Watch1 面板。此外,我没有使用debugger
关键字对断点进行硬编码,而是可以使用Visual Studio 解决方案面板(一旦附加调试器)选择其中一个页面加载的JavaScript文件和交互式切换断点。
现在,我没有使用Visual Studio Express 2012验证它是否可以使用它,尽管我认为应该是这样。我稍后会试一试。
[更新] 以上几乎所有内容都适用于免费提供的Visual Studio 2012 Express for Desktop w / Update3,但有一个例外:即时调试< / strong>选项似乎缺席。这不是一个show-stopper,因为它仍然可以附加到正在运行的AOL进程并以相同的方式调试当前加载的页面。
PS。感谢您对无关question of mine的自愿赏金提议,这是一个非常好的姿态。
答案 1 :(得分:1)
万一有人来这里寻找信息:最新的9.8版本的AOL桌面现在包含Chrome的开发者工具,当你按下F12时,它会在新窗口中打开。