2012-10-22 51 views
11

我使用这个链接:平滑滚动使用JavaScript的onclick

<a class="" onclick="location.href='#top'" href="superContent">superContent</a> 

它做一次两件事情:

  1. 用户跳转到页面
  2. 执行这个其他的顶部(无关)阿贾克斯负载函数

一切工作很好,除了我想弄清楚如何让它滚动到顶端更顺利。我已经尝试添加.scroll将其附加到我的jquery scrollTo插件,但没有任何反应,这可能与我使用javascript onclick这一事实有关,而href属性完全不做其他事情。

有没有办法将动画平滑滚动添加到onclick =“location.href ='#top'”?

回答

35

试试这个,它激活了scrollTop()函数。

设置链接的ID:

<a id="link">link</a> 

jQuery的滚动:

$('#link').click(function(){ 
    $("html, body").animate({ scrollTop: 0 }, 600); 
    return false; 
}); 
+2

美丽的,感谢的人。 – user1691389

+2

'return false'在这里肯定是错误的!改用'function(e)..'和'e.preventDefault()'。 –

+0

它是美丽而超级干净的代码。最重要的是,它运作良好! – Jornes