JS平滑滚动不起作用(仍然是对齐)

时间:2013-07-25 21:09:03

标签: javascript

我正在尝试使用div id =“”的平滑滚动功能,但不是滚动它会捕捉元素。

http://jsfiddle.net/T6F6v/

$(document).ready(function() {

$('a[href*=#]').bind("click", function(e) {

var target = $(this).attr("href"); //Get the target
var scrollToPosition = $(target).offset().top;

$('html').animate({ 'scrollTop': scrollToPosition }, 500, function(target){
    window.location.hash = target;
});

e.preventDefault();
});

我错过了什么吗?

2 个答案:

答案 0 :(得分:0)

$(document).ready(function() {错过了结束})。就是这样。

编辑,因为关于Calamari的回答的建议,$('html,body').animate({...是跨浏览器兼容性所必需的。 Firefox和IE仅响应html,而Chrome只响应body

答案 1 :(得分:0)

除此之外,你错过了结束});,你应该写$('html,body').animate(...,而不是只写$('html').animate(...。这应该可以解决问题。