链接到id(哈希),检测哈希值,但scrollTo不通过if语句触发固定导航



我有一个问题,链接到div和处理一个固定的标题。标题爬过div,我似乎无法让它向上滚动162像素(标题的大小)来显示完整的div。抱歉,如果这是一个愚蠢的问题,但我无法找到一个解决方案,为我看通过搜索后的最后半个小时。

这是给用户的链接。

$(document).ready(function(){
    console.log(location.hash);
    if (window.location.hash){
        $location = $(document).scrollTop();
        console.log($location);
        $location = $location-162;
        console.log($location);
        window.scrollTo(0, $location);
    }
)};

hashchange可以工作,但是hashchange不能在页面加载时工作

你的问题是你混合了window和$(document)。所以正确的脚本应该是

$(document).ready(function(){
console.log(location.hash);
    if (window.location.hash){
        $location = $(document).scrollTop();
        console.log($location);
        $location = $location-162;
        console.log($location);
        $(document).scrollTop($location);
    }
)};

EDIT:现在有正确的函数scrollTop()和只有一个参数

最新更新