FF中的锚标签问题;定位隐藏的div

时间:2011-03-08 23:46:52

标签: php firefox anchor hidden html

我遇到了Firefox和从外部网页到目标网页上的标签div的锚点链接问题;虽然IE正确呈现这些(我知道,这意味着很少),FF和Chrome都会将用户发送到某个位于实际锚标记之上或之下的位置。我没有编写原始代码,但是我无法找到导致此问题或解决方案的FF错误?

开始链接: http://www.washington.edu/students/gencat/academic/sis.html#INTSTUDUG

2 个答案:

答案 0 :(得分:1)

有些JavaScript在加载后会改变页面的布局。如果您在浏览器上禁用JavaScript,则会看到FF和Chrome都能正常运行。

答案 1 :(得分:0)

这与你的javascript有关。锚将您带到页面上的特定位置,然后javascript更改选项卡,使页面顶部的div更大。滚动页面后会发生这种情况,这会让您离开锚点。

尝试使用JS打开加载页面,关闭JS,你会看到我的意思。

如何解决这个问题?您可以使用jQuery滚动到文档就绪函数上的锚点,如下所示:

$(function() { 
    var anchor = $('a[name="' + window.location.hash.replace('#', '') + '"]');
    if(anchor) {
         $('html, body').animate({scrollTop: anchor.offset().top});
    }
});

稍微修复一下,但它会起作用。更好的方法是确保JS不会改变文档就绪的布局:)