我使用可拖动的 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);
}
}
}
问题是,如果用户快速滑动滑块,则会跳过一些行和列。