1

我试图让我的浏览器窗口在单击时向下滚动到 div 的顶部。唯一的问题是其他一切正常,但窗口应向下滚动到单击的 div 的顶部...

到目前为止,我有:

$('.work-showcase').click(function(){
    $('.work-showcase').animate({height:'135px'}, 500);
    $(this).animate({height:'400px'}, 500);
    $(window).scrollTop;
});

我做了一个 jsfiddle 来向你展示我的意思...... http://jsfiddle.net/Jq4Vw/

4

5 回答 5

8

只要窗口没有最大化,这就是滚动到 div 顶部的方式:

$('.work-showcase').click(function(){

    $('html,body').animate({
        scrollTop: $(this).offset().top},
        'slow');
});

我不确定您在滚动之前要达到的目标

在这里看到它jsFiddle

于 2013-01-08T11:34:45.753 回答
1

试试这个:

$('.work-showcase').click(function(){
    $('.work-showcase').animate({height:'135px'}, 500);
    $(this).animate({height:'400px'}, 500);
    $("html, body").animate({ scrollTop: $(this).offset().top }, 500);
});
于 2013-01-08T11:36:44.780 回答
1

看到这个:http: //jsfiddle.net/Jq4Vw/4/

$('.work-showcase').click(function(){
   $('.work-showcase').animate({height:'135px'}, 500);
  $(this).animate({height:'400px'}, 500,function() {  
  $("html, body").animate({ scrollTop: $(this).offset().top });  
   });
 });
于 2013-01-08T11:39:26.487 回答
1

我认为您正在尝试实现这一目标:http: //jsfiddle.net/Jq4Vw/7/

$('.work-showcase').click(function(){
   $('.work-showcase').animate({height:'135px'}, 500);
   $(this).animate({height:'400px'}, 500).promise().done(function(){
       $('html,body').animate({scrollTop: $(this).offset().top},500);
       $(this).addClass('current').unbind('click'); // just add this line
   });
});
于 2013-01-08T11:45:15.410 回答
0
$('.work-showcase').click(function(){
    window.location = "#top";
});

确保存在顶部 ID。

<div id="top">
I am at the top of the document.
</div>

工作小提琴

于 2013-01-08T11:36:10.267 回答