IE7仅滚动到新窗口中锚定

时间:2013-02-19 10:51:38

标签: javascript anchor internet-explorer-7

我有一个包含选项卡式窗格的页面( pageA ),每个窗格的内容由DIV元素表示,并且它具有唯一的ID,例如id =“tab1”

<div id="tab1">Contents of tab</div>

我有另一个页面( pageB ),其中有一个链接到特定标签的A元素

<a href="otherpage.html#tab2">Tab 2</a>

在IE7 pageA 上,如果我在 pageB

中打开新窗口中的链接,则只会滚动选项卡

是否有人遇到此问题并知道如何解决此问题?

1 个答案:

答案 0 :(得分:0)

我注意到IE7中锚点构造的url无效:

<a href='#skipNav'>Skip</a> -> <url>/#/skipNav

所以最简单的解决方案是在锚点中放置一个带#的完整URL。这将阻止IE7从头开始构建它(url应该是服务器端生成的,以避免Dev / Test / Qa / Prd转换问题):

<a href='<url>/#skipNav'>Sip</a>

<德尔>编辑: 如果错误仍然发生,请尝试添加随机查询字符串。这是一个肮脏的解决方案,但在IE7

中并不脏

编辑: 这是另一种方法的一个很好的例子:window.location = #anchor doesn't work in IE 简而言之:

 <a href="#" onclick="window.scrollTo(0, 0); return false;'">Back to top</a>