<script>
function CurHash(){
var id = parseInt(window.location.hash.replace("#", ""));
alert(id);
}
</script>
<!-- START URL: test.htm#1 -->
<a href='#1' onClick='CurHash()'>#1</a>
<a href='#2' onClick='CurHash()'>#2</a>
<a href='#3' onClick='CurHash()'>#3</a>
如果我们现在在 test.htm#1 并点击链接 #2,alert 显示 1 数字,而不是 2,并且在 URL 中的这个哈希更改为 2 之后。当你下次点击 3 时,它将显示 prevouse 2,依此类推.
对我来说有问题,因为我使用哈希在固定高度上滚动我的页面内容(由于架构问题而不能使用锚点),并且单击链接后这种行为只会在第二次单击时发生滚动,这是完全错误的.
问题:如何更新哈希并获取更新的(不是以前的)值以供进一步使用,而不在浏览器中重新加载页面(页面上已经滚动的所有内容,从服务器重新加载不是好的解决方案)。