jQuery滚动到页面锁定/断断续续/颤动滚动的底部

时间:2014-08-22 02:26:40

标签: javascript jquery html css

我尝试在用户提交表单后滚动到我的页面底部。但是,当我执行以下代码时,浏览器会滚动到页面底部,但不允许我向上滚动(通过鼠标滚轮,滚动条或箭头按下)而不会锁定/关闭/抖动。

var scrollToBottom = function() {
    $("html, body").animate({ scrollTop: $(document).height() - $(window).height()}, 0);
}

知道造成这种情况的原因是什么?它似乎放松了#34;大约五秒后它在浏览器上的抓地力。

2 个答案:

答案 0 :(得分:1)

我跑了你的功能,并没有把我锁在底部5秒钟。默认情况下,它会在滚动时锁定,并在浏览器到达预定位置时释放。

http://jsfiddle.net/oq9eo2zz/2/

其他可能导致问题,但如果您正在寻找快速解决方法,可以强制它解锁(停止动画)'mousewheel DOMMouseScroll keyup keydown'。

$(window).on("mousewheel DOMMouseScroll keyup keydown", function(e){
  $('html, body').stop();
});

0持续时间: http://jsfiddle.net/oq9eo2zz/1/

3000持续时间: http://jsfiddle.net/oq9eo2zz/4/

希望这有帮助!

答案 1 :(得分:0)

使用此

var scrollToBottom = function() {
  $('html, body').animate({scrollTop:$(document).height()}, 'slow');
  return false;
}

OR

function scrollToBottom()
{
  alert("Scrolling to bottom ...");
  window.scrollTo(0, document.body.scrollHeight);
}