Let'u与下面的例子入手:了解HTML锚标记
创建同一目录三个页面: 的test.html 的index.html
你的test.html:
<html>
<head>
<script>
function test()
{
alert('Going to google.com?');
window.location="http://google.com";
}
</script>
</head>
<body>
<a href='' onclick="test();">google.com</a><br/>
<input type="button" value="google" onclick="test();" />
<a href='' onmouseover="test();">google.com</a><br/>
</body>
</html>
现在检查IE上的test.html页面以及firefox或者crome。
你会发现以下几点:
- 按钮完美的作品。
- 第一个超链接在IE和其他浏览器中的工作方式不同。在IE中,它将我们带回到index.html页面,而在Firefox中,它保持在同一页面上。
- 对于第一个超链接,window.location失败。
- 第二个超链接,你不能点击它,因为鼠标悬停事件将首先触发,它完美的工作!
为什么?
我的主要兴趣是第三点,因为它甚至给我们提醒,window.location失败。
为什么在返回语句前有标签? https://developer.mozilla.org/en/JavaScript/Reference/Statements/label – Quentin 2010-10-09 09:37:44
如果我把'alert()'放在'window.location'后面,那么'alert()'会先被调用,然后它会重定向我们到我们的位置为什么? – Vikas 2010-10-09 09:47:22
实际上,我不是那种在js中经历过的,可以告诉你为什么警报会在重定向之前出现。对我来说,似乎重定向是触发窗口对象的位置属性的变化,并且事件放在堆栈上,并在您的test()方法中正在处理的单击事件之后进行处理 – ITroubs 2010-10-09 09:52:17