2013-04-06 38 views
0

我使用jQuery UI可拖动功能制作了自定义滑块。我将可拖动的控件限制在x轴上。拖动控件时,检查控件的位置。如何提高使用jQuery和jQuery UI可拖动功能时的性能

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

此函数选择表格中的单元格范围,并将单元格的html设置为图像。

因此,例如,如果索引是1,那么我想选择第一行和第一列中的所有单元格(只有一个单元格)。如果索引是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); 
     } 
    } 
} 

的问题是,如果用户滑动滑块快速thensome行和列被跳过。

+1

创建一个演示...可能会帮助很多缓存行和减少大量的DOM搜索 – charlietfl 2013-04-06 12:13:13

+0

@charlietfl感谢您的提示,我将如何缓存行? – 2013-04-06 12:33:01

回答

0

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