按下url栏中的enter键不会发生Internet Explorer刷新

时间:2011-04-28 09:19:52

标签: web-applications browser cross-browser internet-explorer-7

最近我在IE中发现了一个小问题。在ie7浏览器中,每当我按下url栏中的enter(return)键时,它会刷新当前页面。但是如果url包含“#”标记,则不会发生相同的行为。我们使用“#”标记来支持javascript历史记录。如果我们删除“#”标记,则效果很好。这是ie7的问题还是预期的行为?我测试了其他浏览器,如firefox和chrome。似乎只在IE7中发生了。当我们按下输入时,我们得到像浏览器一样清爽的感觉。但实际上不是。 enter image description here

有什么想法吗?!!

3 个答案:

答案 0 :(得分:2)

这是微软的设计决定,预期行为也是如此。

答案 1 :(得分:2)

这是预期的行为,以及我现在在FF4中遇到的情况。

这与点击this link

的行为类似

在IE7中,任何用户都不太可能这样做。我不会太担心它。

答案 2 :(得分:0)

这是因为#会将网站导航为锚点。代表锚。因此,如果您有包含第1,2和3节的文档,则可以使用以下链接发送它们:example.com/index.html#section3

使用此逻辑的网页就像Gmail一样。打开Gmail并观看用户栏。您会注意到您没有重新加载页面,只需单击链接和按钮,页面就会发生变化。如果您希望将来返回该页面,可以阅读Hashtag并提供链接。 Web的未来正在使用Web应用程序,您无需导航到完全不同的页面,页面只会加载所需的内容。这是一个非常简化的页面示例,它跟踪URL栏中的导航。

http://benalman.com/code/projects/jquery-bbq/examples/fragment-jquery-ui-tabs/#some_tabs=3

我知道,如果有“#”,用户无法通过输入来重新加载页面,这很奇怪,但永远不会是这种情况。拥抱未来。