2011-03-08 83 views
1

我遇到了Firefox的问题,并将锚点链接从外部页面锚定到登录页面上的选项卡div;而IE正确渲染这些(我知道,这意味着很少),FF和Chrome都会将用户发送到某个位置,该位置稍微高于或低于实际锚标记。我没有编写原始代码,但是我无法找到很多会导致此问题的FF错误或解决方案?FF中的锚标签问题;定位隐藏的div

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

+0

如果发生在两个不同的浏览器中,那么它不能是FF中的错误。您有14个HTML错误可能导致DOM中的解析问题? – Rob 2011-03-09 00:36:01

回答

1

一些JavaScript是改变页面的布局已经加载之后。如果您在浏览器上禁用JavaScript,则会看到FF和Chrome都能正常工作。

+0

页面加载后,概览部分消失。因此,浏览器是在正确的位置,但页面改变。 – Dimitry 2011-03-09 00:09:03

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不会更改文档上的布局准备:)