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