0

我有一些 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() { });}

感谢关注,希望能帮到你

4

1 回答 1

0

您可以滚动到有问题的 div,使用$('html').scrollTop()它可以将窗口的滚动条调整到正确的位置。要确定正确的高度,请获取目标元素的 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,因此请务必在取消隐藏容器后触发此代码。

于 2012-05-31T15:04:44.380 回答