2013-05-30 60 views
1

当我按#download时,#musicDownload div向下滑动并增加页面高度。之后,我想向下滚动到该div的开头。
到目前为止,我只设法向下滚动,只要旧的页面高度允许。jquery:slideDown增加页面高度,然后向下滚动

这是我得到的代码。 (没有不工作的滚动条)
如果有“更好”的方式,也可以随意调整代码。

$(document).ready(function() { 
$("#download").click(function() { 
    $("#musicDownload").slideToggle(500); 
    return false; 
}); 

$("html").click(function(){ 
    $("#musicDownload").slideUp(500); 
}); 

$("#musicDownload").click(function(event) { 
    event.stopPropagation(); 
}); 
}); 

回答

2

所以我加入一个回调函数到的slideToggle来检查,如果股利是可见的解决了这个问题。
像这样:

$("#download").click(function() { 
    $("#musicDownload").slideToggle(500, function(){ 
     if($("#musicDownload").is(":visible")){ 
      $("html, body").animate({scrollTop: $("#download").offset().top},500); 
     } 
    }); 
    return false; 
});