我遇到了Firefox和从外部网页到目标网页上的标签div的锚点链接问题;虽然IE正确呈现这些(我知道,这意味着很少),FF和Chrome都会将用户发送到某个位于实际锚标记之上或之下的位置。我没有编写原始代码,但是我无法找到导致此问题或解决方案的FF错误?
开始链接: http://www.washington.edu/students/gencat/academic/sis.html#INTSTUDUG
答案 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不会改变文档就绪的布局:)