Jquery 从URL'中删除定位标记;s
我在移动(和桌面)浏览时使用锚定标签时遇到了一个问题。单击链接时,锚id将写入url,因此www.mysite.com将成为www.mysite.com/#锚,这会在刷新页面时引发问题,因为它将跳回锚位置而不是页面顶部(或刷新页面的位置)。我发布了一个关于这方面的问题,并得到了一些回复,这些回复需要同一代码的多个实例,这似乎效率很低。所以,在做了这么多手脚之后,我想出了这个Jquery 从URL'中删除定位标记;s,jquery,web,Jquery,Web,我在移动(和桌面)浏览时使用锚定标签时遇到了一个问题。单击链接时,锚id将写入url,因此www.mysite.com将成为www.mysite.com/#锚,这会在刷新页面时引发问题,因为它将跳回锚位置而不是页面顶部(或刷新页面的位置)。我发布了一个关于这方面的问题,并得到了一些回复,这些回复需要同一代码的多个实例,这似乎效率很低。所以,在做了这么多手脚之后,我想出了这个 $('.js-anchor').click(function (evt) { evt.preven
$('.js-anchor').click(function (evt) {
evt.preventDefault();
var anchor = $(this).text();
$('html, body').animate({
scrollTop: $('#' + anchor).offset().top
}, 1500);
});
通过确保链接的内容与锚的id相同,这将非常有效。只要类包含“js锚定”,页面上就可以有任意多个锚定
(html模拟)
顶部
<a class="js-anchor">Top</a>
<span id="Top"></span>