jquery - 使用 jQuery 高效查找下一个可见的表格行

标签 jquery tablerow

在隐藏了一些行的表中,我想获取下一个可见行(如果存在)。这将完成这项工作:

row = $(selectedRow).nextAll(':visible');
if ($(row).length > 0)
    selectedRow = row;

但是当所选行后面有很多行时,速度非常慢。脚本化方法是:

var row = $(selectedRow).next();
while ($(row).length > 0 && !$(row).is(':visible'))
    row = $(row).next();
if ($(row).length > 0)
    selectedRow = row;

这要快得多,但我必须使用一种优雅的全 jQuery 方法。

最佳答案

根据 mblase75 的有用建议,这是我找到的最优雅的解决方案:

var row = $(selectedRow).next(':visible');

if ($(row).length == 0)
    row = $(selectedRow).nextUntil(':visible').last().next();

if ($(row).length > 0)
    selectedRow = row;

通常(就我而言),表格不会被过滤,因此下一行在大部分时间都是可见的。如果不是,nextUntil() 会生成一组非空的不可见行。选择该组中的最后一行,然后选择其后面的下一行,即可给出表中的下一个可见行(如果有)。

关于jquery - 使用 jQuery 高效查找下一个可见的表格行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8495170/

相关文章:

jquery - 将鼠标悬停在链接上时更改 div 的背景图像

javascript - 更改按钮以链接到 html 表中?

Android 并在 TableRow 的 TextView 中显示多行文本

android - 如何在 TableLayout 中自动调整 EditText 小部件(具有某些属性)的大小

jquery - 使用 jQuery 更改 TD 上的背景图像时,T​​R 背景图像消失

javascript - 尝试动态加载 API 和 JS 文件

javascript - 如何更改元素的文本而不影响其子元素?

javascript - JQuery .html() 问题

Android TableRow RelativeLayout 问题

android - 避免 ImageView 在 TableRow 内缩放