我正在尝试使用以下jQuery代码段来创建一个平滑滚动到我的Wordpress网站上的#links:
$(window).bind("load", function() {
var urlHash = window.location.href.split("#")[1];
$('html,body').animate({scrollTop:$('a[href="#'+urlHash+'"]').offset().top}, 4000);
});
当链接结构如下时,这可以正常工作:
mysite.com/page.htm#scroll1
但是,由于我的网站是Wordpress,我的链接构造如下:
mysite.com/?page_id=6#scroll1
或
mysite.com/section/#scroll1
这似乎抛出了剧本。
我是否可以添加到代码段以使其能够理解这种链接结构?
对不起,如果这是一个愚蠢的问题,我是初学者。
答案 0 :(得分:1)
试试这个:
$(document).ready(function () {
function Move2UrlAnchor(speed) {
$('html,body').scrollTop(0);
if (window.location.hash) {
var anchor = window.location.hash;
var id = anchor.replace('#','');
$("a[href*='"+anchor+"']").attr('id', id);
var ScroolPos = $(anchor).offset().top;
$('html,body').animate({ scrollTop: ScroolPos },speed);
};
};
Move2UrlAnchor(10000);
});
答案 1 :(得分:0)
尝试使用:
var urlHash = window.location.hash.split("#")[1];