У меня есть таблица с возможностью изменения размера. На самом деле это не элемент <table>
. Я использую кластер из элементов <div>
.
Вкратце, моя функция изменения размера - это вложенные петли for. Это примерно так:
function resizeTable (computedCellWidth) {
for (var r = 0; r < rows.length; r++) {
for (var c = 0; c < rows[r].cells.length; c++) {
rows[r].cells[c].domNode.style.width = computedCellWidth + 'px';
}
}
}
Как я понимаю, каждый rows[r].cells[c].domNode.style.width = computedCellWidth + 'px';
вызывает полное перерисование документа. Таким образом, если таблица достаточно большая, то изменение размера таблицы крайне замедляет работу браузера.
Я попытался использовать дросселирование (100 мс), чтобы уменьшить количество событий изменения размера, но если таблица достаточно большая, то даже одно изменение размера занимает слишком много времени.
Можно ли сначала назначить все свойства width
и только после этого запуска выполнить однократное перерисовку?