javascript – Jquery操纵网址

我正在使用pyrocms,所有导航链接都是绝对链接,不允许我在页面上进行平滑滚动工作.

我平滑的滚动脚本是

.js文件

$('.nav a').click(function() {
     $('html, body').animate({
        scrollTop : $($.attr(this, 'href')).offset().top
    }, 500);
    return false;
});

和pyrocms我的链接看起来像在同一页面上的div

<a href="http://www.mysite.com/index.php/#somelink>Link on the same page</a>

问题是我的动画因为某些原因不适用于absoulte网址.我是否遗漏了一些简单的东西,或者我是否需要使用jquery将我的链接转换为亲属(href =“#somelink”).这是一种可能性吗?我只需要这个就可以在我的导航链接上工作,因为它们都是index.php页面上的所有链接.

最佳答案 您应该使用锚标记的属性哈希:

scrollTop : $(this.hash).offset().top

DEMO

点赞