IE 7没有显示简单的JS警报?

时间:2008-11-24 04:29:07

标签: javascript internet-explorer-7 parallels

尝试单击下一页上的“打印”按钮: (链接删除 - 共识是一切正常,问题是我的设置) 出于调试目的,我用一个简单的警报(“测试”)替换了一大块javascript,甚至在IE7中也没有显示出来。它在Safari,FF(Mac和PC)和IE6中完全正常,但由于某些原因它在IE7中不起作用。供您参考,按钮中的代码是:

<a onclick="makeNewWindow()" href="#"><img src="/print.gif"/></a>

和/newsletter/print.js中的JS是这样的:

function makeNewWindow() {
   alert("test");   
}

任何人都可以帮助我理解是否有解决方法,或者这与我通过Mac上的Parallels运行“IE7 Standalone”这一事实有关?非常感谢任何帮助。

谢谢, 麦克

6 个答案:

答案 0 :(得分:4)

刚刚在IE7 Vista上进行了测试,它运行良好......你的代码看起来也很合理,所以我认为你的设置可能有问题吗?

答案 1 :(得分:3)

在您的IE7特定设置中可能禁用了Javascript。请参阅此链接如何启用它: http://www.tranexp.com/win/JavaScript-enabling.htm

答案 2 :(得分:2)

可能是因为它正在缓存旧版本的js文件?尝试ctrl-F5

答案 3 :(得分:2)

我猜你在使用其他javascript代码时出错,导致浏览器忽略其他所有内容。

您也可以将该代码更改为     ... onclick =“makeNewWindow();返回false”...... 为了避免混淆

答案 4 :(得分:1)

这可能不是原始问题,但由于我遇到同样的问题,我给出了我的发现,这对其他人有用。

事实上,我只是从Windows资源管理器中打开它来测试HTML,所以我在地址栏中有一个file:// URL。
除了Internet Explorer 7(以及可能更高版本)之外,所有浏览器都可以正常使用 事实上,当我在IE7中打开这个文件时,我得到了一个关于带有脚本的本地文件的安全问题的警报。他们有太多的安全漏洞,他们过于保护......

看来alert()刚刚在本地模式下停用,我找不到安全设置来启用它(不太费力搜索......)。 我终于将文件放在我本地Apache安装的www目录中(使用WampServer 2,但其他发行版可能很好),并通过http://localhost打开它,alert()的行为就可以了......

我还发现地址栏中的javascript:alert("Foo");刚刚完全停用,这是一种令人愤怒的“设计”选择......这太方便了。

答案 5 :(得分:0)

发布了第一个答案 - 即使用href='javascript:void(0);'代替href='#'。在您的情况下,使用href='javascript:yourFunction();',它应该工作。 IE似乎优先于href over onclick(其他浏览器不支持)。此外,如果您没有href,则会收到页面未找到错误。