Есть ли способ приостановить оплавление во время тяжелых манипуляций с DOM? - PullRequest
5 голосов
/ 17 июля 2010

Мне нужно выполнить тяжелые манипуляции с DOM для всего документа веб-страниц в надстройке, которую я пишу. Я хотел бы свести к минимуму оплавления, чтобы только один из них происходил для всех моих манипуляций. Удаление элемента body, выполнение манипуляций, а затем вставка его снова не возможны, поскольку это переоценивает все элементы <script>. В настоящее время я установил видимость тела на 'none' до манипуляций и восстановил значение дисплея после. Хотя я не уверен, что это лучший способ справиться с этим.

Есть ли лучший способ? Конечно, это может быть специфичный для Firefox код. В конце концов, это дополнение к Firefox.

1 Ответ

1 голос
/ 18 июля 2010

Gecko на самом деле довольно хорош в подавлении ненужных модификаций самостоятельно (т. Е. Вам лучше не связываться с ним), за исключением случаев, когда между многими изменениями, которые вы делаете, вы также запрашиваете информацию, требуется, чтобы макет был актуальным (например, позиции или размеры элементов, getComputedStyle и т. д.)

...