ResizeObserver запускается изначально при загрузке страницы? - PullRequest
1 голос
/ 02 февраля 2020

Похоже, когда я передаю узел в ResizeObserver.observe () по событию DOMContentLoaded, он вызывается немедленно. Это считается нормальным поведением? Потому что это именно то, что мне нужно.

1 Ответ

1 голос
/ 02 февраля 2020

Да, это поведение в расчете на спецификацию c ( ref. ):

  • Наблюдение сработает, когда наблюдаемый элемент будет вставлен / удален из DOM.

  • Наблюдение сработает, когда для наблюдаемого элемента будет установлено значение none.

  • Наблюдения не срабатывают для незаменяемых встроенных элементов.

  • Наблюдения не будут вызваны преобразованиями CSS.

  • Наблюдение будет запущено, когда начнется наблюдение, если элемент визуализируется, а размер элемента равен не 0,0.

Таким образом, в вашем случае, либо элемент еще не был в DOM, и случай 1 вызовет его срабатывание, либо он уже был, и случай 5 будет (хотя в DOMContentLoaded это должно быть 5;) .

...