我试图让它工作:
window.location.href='tsa.html#tile4';
document.body.scrollTop -= 100;
它试图跳转到某个位置的新页面,然后向上滚动一点。但似乎后半部分不起作用,因为浏览器跳开了。任何简单的修复?
我试图让它工作:
window.location.href='tsa.html#tile4';
document.body.scrollTop -= 100;
它试图跳转到某个位置的新页面,然后向上滚动一点。但似乎后半部分不起作用,因为浏览器跳开了。任何简单的修复?
我发现了一些可行的方法,但我仍然不知道为什么其他提议的解决方案不起作用:
$('html, body').animate({
scrollTop: $('#tile4').offset().top - 100
}, 'fast');
尽管如此,仍然有一个令人讨厌的动画。
当您切换到另一个页面时,当前文档被卸载并且其中的所有 JS 都停止执行。加载一个新文档,其中的 JS 开始运行。
两种解决方案。第一个是您不重新加载页面,而是在 ajax 请求中获取它们并覆盖正文内容。然后,您的脚本可能会不停地工作。
但对你来说,将第二行(关于滚动)移动到 page 中的脚本会更容易tsa.html
。例如,(jquery)
<script>
$(document).ready(function(){
if (location.hash == '#tile4')
document.body.scrollTop -= 100
})
</script>
如果没有 jquery,请寻找一些<body onload>
事件处理。