Показать сообщение отдельно
  #1 (permalink)  
Старый 03.11.2014, 21:58
Профессор
Отправить личное сообщение для skrudjmakdak Посмотреть профиль Найти все сообщения от skrudjmakdak
 
Регистрация: 27.04.2012
Сообщений: 1,410

обновление данных в dom
задача по оптимизации.

есть таблица с данными, данные которых надо обновить. переформировывать заново всю таблицу не вариант, т.к. там могут быть атрибуты и прочая шняга, которая может потеряться. тобишь мне надо поменять чисто значения в ячейках таблицы:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
    <head>
        <title>Example</title>  
		<style>
		</style>
    </head>
	<body>
		<table>
			<tr>
				<td attr="111">123</td>
				<td>123</td>
				<td>123</td>
			</tr>
		</table>
	<script>
	var table = document.querySelector('table'),
		tds = table.querySelectorAll('td');
	
	var val = [222, 333, 444];
	[].forEach.call(tds, function (v, i) {
		v.innerHTML = val[i];
	});
	</script>
    </body>
</html>


в данном примере он каждый раз обращается к dom и при каждом
v.innerHTML = val[i];
я так полагаю идет перерисовка и соответственно падает проиводительность (может я и не прав здесь). есть какой то флаг или метод, который не будет перерисовывать таблицу после каждого присваивания??
Ответить с цитированием