我有这些网址。
<ul class="tm-nav-links">
<li class="tm-nav-item active">
<a href="#" data-linkid="0" data-align="right" class="tm-nav-link">Intro</a>
</li>
<li class="tm-nav-item">
<a href="#" data-linkid="1" data-align="right" class="tm-nav-link">About</a>
</li>
<li class="tm-nav-item">
<a href="#" data-linkid="1" data-align="right" class="tm-nav-link">Contact-us</a>
</li>
</ul>
例如,当我选择 contact-us
我想在var中保留之前选择的url,因为我想在我点击浏览器的后退按钮时使用它来返回。
我尝试了
$('.tm-nav-item li.active:last')
但它不工作,有什么办法吗?
假设你在一个页面内导航只是通过改变滚动位置和目标页面的部分,你应该改变上述策略。
你应该给这些锚点一些哈希链接,比如。#intro, #about, #contact -us等。
然后在hashChange上滚动到这些位置。然后在浏览器返回时,你将能够返回到以前的位置。
在现代浏览器(IE8+,FF3.6+,Chrome)中,你可以只监听窗口的hashchange事件。
在一些旧的浏览器中,你需要一个定时器来持续检查location.hash。有一些jQuery插件也能很好地与旧浏览器配合。
解决方法
history.pushState()
and
history.replaceStat()