JQuery,当div滑下时如何使页面滚动,这样你就可以看到它

时间:2012-05-31 14:55:39

标签: jquery

我有一些jquery代码从动态数据列表中打开我页面上隐藏的div,问题是如果你从页面的低位点击一行它打开页面底部下方的div你必须向下滚动以查看它,有没有办法设置某种锚或让jqyer在打开时滚动到div的底部,以便用户可以看到它?

这是我的代码:

//CHECK IF ROW IS VISIABLE
if (!$('#'+rowid).is(':visible')) {
//HIDE ANY OPEN ROWS
$("#tableToggle tr.toggleable").fadeOut('fast', function() { });
//DO SLIDE LOAD FUNCTION
$('#'+rowid).slideDown('slow', function() { });
$("#einfo"+rowid).load(url, function(response, status, xhr) {
if (status == "success") { $("#loader"+rowid).hide(); $('#einfo'+rowid).slideDown('slow'); } });
//HIDE ALL TOGGLEABLE ROWS
}else { $("#tableToggle tr.toggleable").fadeOut('fast', function() { });}

感谢您的期待,希望您能提供帮助

1 个答案:

答案 0 :(得分:0)

您可以使用$('html').scrollTop()滚动到相关div,您可以使用它将窗口的滚动条调整到正确的位置。 要确定正确的高度,请获取目标元素的scrollTop()属性。

示例代码可能如下所示:

$('html').scrollTop($('#myDivContainer').scrollTop()); // Scroll to desired element

此外,您可以使用jQuery的animate函数进行更平滑的过渡:

$('html').animate({ scrollTop: $('#myDivContainer').scrollTop() }, 2000); // Animated scroll over 2 seconds

请注意.scrollTop将向display:none样式元素返回零,因此请务必在取消隐藏容器后触发此代码。