Обновление определенного свойства в элементе DOM происходит немедленно и должно сохраняться при последующем чтении этого свойства.
Если вы полагаетесь на это изменение для распространения по DOM, это может быть сложно.Например, например, изменение размера элемента и ожидание того, что элемент-брат сообщит о новой позиции смещения в результате - последний может может не произойти, пока стек не размотается.На самом деле я не знаю точных правил, но вы должны быть осторожны - и это иногда зависит от браузера.И, что еще страшно, иногда выдает предупреждение, чтобы помочь отладке, и это заставляет элементы сразу «реализовать» свой новый макет.Затем вы отключаете оповещение, и оно возвращается к ошибочному поведению.
Так что, если вы уверены, что изменение DOM не оказало немедленного воздействия, тогда иногда нужно вызывать "setTimeout"с функцией обратного вызова и значением времени 0. Когда обратный вызов таймера завершится, вы можете завершить последующую обработку.YMMV