происходит ли переформатирование для каждого применяемого стиля? - PullRequest
4 голосов
/ 01 августа 2011

Когда я делаю это в JavaScript:

element.style.width="100px";
element.style.height="100px";

Правильно ли я сказал, что в документе есть 2 повторения?

И если я сделаю это:

element.setAttribute("style","width:100px;height:100px;") есть только 1 переработка?

(я знаю, что последний просто переопределит все другие ранее установленные стили)

Дополнительный вопрос: есть ли способ остановить догадки и точно проверить, сколько повторений происходит в браузере (Chrome / FF / и т. Д.)?

Ответы [ 2 ]

4 голосов
/ 01 августа 2011

Да, в первом примере будет два перекомпоновки и только один во втором. Проверьте Когда происходит перекомпоновка в среде DOM? .

2 голосов
/ 01 августа 2011

Когда я делаю это в JavaScript:

element.style.width = "100px";
element.style.height = "100px";

Правильно ли я сказал, что в документе есть 2 повторения?

Наиболее маловероятно. Перефразы занимают (сравнительно) много времени, поэтому они имеют тенденцию происходить только во время выполнения JavaScript, когда это необходимо, например, когда фрагмент JavaScript считывает свойство, зависящее от его макета, например, offsetWidth.

Но детали будут зависеть от реализации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...