滚动到页面上的div

时间:2013-09-05 06:55:31

标签: javascript jquery

我正在尝试在.click事件上滚动页面。以下是我到目前为止的情况:

jQuery的:

function scrollToStart() {
    $("#scrollToStart").click(function() {
      $("#startHere").animate({ scrollTop: 0 }, "slow");
      return false;
    });
}

HTML:

<a href="#startHere" id="scrollToStart">
    <img class="img-center" src="images/get-started.png"/>
</a>

当我点击时,它什么也没做。我做错了什么?

6 个答案:

答案 0 :(得分:2)

这应该有效

$("#scrollToStart").click(function (){
       $('html, body').animate({
       crollTop: $("#startHere").offset().top
     }, 2000);

});
一个工作小提琴 http://jsfiddle.net/tvTUu/

答案 1 :(得分:1)

使用

$('html,body').animate({    
 scrollTop: $("#divToBeScrolledTo").offset().top;    
});

scrollTop: 0,您始终滚动到页面顶部。

您可以在此处找到更多信息(使用live-Demo):
http://css-tricks.com/snippets/jquery/smooth-scrolling/

答案 2 :(得分:0)

$(function(){// when dom loaded
    $("#scrollToStart").click(function (){
       $(document.body).animate({
          scrollTop: 0
       });
    });
});

我为我工作。

答案 3 :(得分:0)

如果我理解了问题,您需要将页面滚动到点击事件的顶部位置,并带有动画效果。我不久前做了类似的事情,这里是JavaScript代码。

innerAnimationStep = 25;
innerScrollStep = 1;

function scrollTopAnimated(scrollStep, animationStep)
{
    try
    {
        innerScrollStep = scrollStep;
        innerAnimationStep = animationStep;
        scrollTopAnimationStep();
    }
    catch(e)
    {
        console.log(e.message);
    }
}

function scrollTopAnimationStep()
{   
    try
    {
        var jDocument = $(document); 
        if(jDocument.scrollTop() > 0)
        {
            jDocument.scrollTop( jDocument.scrollTop() - innerScrollStep );
            setTimeout(scrollTopAnimationStep, innerAnimationStep);
        }
    }
    catch(e)
    {
        console.log(e.message);
    }
}

只需致电scrollTopAnimated即可使页面滚动并显示动画效果。我希望它可以提供帮助。

答案 4 :(得分:0)

$("#scrollToStart").bind('click',function() {

$('body , html').animate(
  {
    scrollTop :  $("#startHere").offset().top
  } , 2000 ) ;
});

http://justprogrammer.com/2013/06/21/scroll-to-specifically-element-in-browser/ http://justprogrammer.com/2013/06/25/jquery-basic-concepts/

答案 5 :(得分:-1)

$( document ).ready(function(){
$("#scrollToStart").click(function() {
  $("#startHere").animate({ scrollTop: 0 }, "slow");
  return false;
});});