0

我使用可拖动的 jQuery UI 制作了一个自定义滑块。我将可拖动控件限制在 x 轴上。当控件被拖动时,我检查控件的位置。

根据位置,我调用一个名为 selectCells 的函数。

此函数选择表格中的一系列单元格并将单元格的 html 设置为图像。

因此,例如,如果索引为 1,那么我想选择第一行和第一列中的所有单元格(只有一个单元格)。如果索引为 2,那么我想选择前 2 行和前 2 列中的单元格(将选择四个单元格)等。

我跳过第一行和第一列,因为我不想填充这些单元格

我的 selectCells 函数如下

function selectCells(index, bGoingRight) {
    if (bGoingRight) {
        for (var i = 1; i <= index; i++) {
            $(container).find('#exponentTable tr:eq(' + i + ')').find('td').slice(1, index + 1).html(block);
        }
    } else {
        for (var i = 1; i < 13; i++) {
            $(container).find('#exponentTable tr:eq(' + i + ') td:eq(' + (index + 1) + ')').html(grayBlock);
            $(container).find('#exponentTable tr:eq(' +(index + 1) + ') td:eq(' + ( 13 - i) + ')').html(grayBlock);
        }
    }
}

问题是,如果用户快速滑动滑块,则会跳过一些行和列。

4

1 回答 1

0

正如 charlietfl 所说,一旦我缓存了行,它就会提高性能。

于 2013-04-06T13:29:18.187 回答