我在链接到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不适用于页面加载。
最佳答案
您的问题是您混合使用窗口和$(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);
}
)};
编辑:现在使用正确的函数scrollTop()和仅一个参数。
关于javascript - 链接到id(hash),检测哈希,但是scrollTo不通过固定的nav触发if语句,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24744329/