页面跳转滚动到指定位置
我们知道,设置锚点链接可以让我们快速找到想要部分,尤其是在页面内容多的情况下,设置一个锚点链接导航尤为方便。无论是在同一页面跳转还是在不同页面间跳转,只要在对应页面加上相应的id,锚点链接设置 href=”#id” 即可。
要实现滚动到某个固定位置,如果是当前页面内跳转,传统的做法是获取该位置的offsetTop,然后通过运动函数让body的scrollTop达到offsetTop即可。
跨页面的滚动跳转原理也是类似的,但是如何让目标页面知道跳转到哪个位置呢?这是一个问题。后来想到可以通过给目标页面的url传递参数,即 http://xxx.com/xx/page.html?id ,而该参数就是锚点的id,再在目标页面里解析url得到该锚点id,于是就有:
iPos = location.href.indexOf(“?”); |
具体的demo页面:页面跳转滚动对比