#javascript #css #dom #google-chrome-devtools #addeventlistener
#javascript #css — код #дом #google-chrome-devtools #addeventlistener
Вопрос:
Я рисую таблицу с помощью функции после получения данных из запроса GET. После того, как я нарисую таблицу, я хочу сохранить положение прокрутки относительно предыдущей таблицы, которая была там раньше (у всех таблиц есть overflow:auto;
).
Способ решения этой проблемы заключается в следующем:
- слушайте свиток
- сохраните положение прокрутки в sessionStorage
- После того, как новая таблица будет нарисована, я использую
.scrolLeft = sessionStorage.getItem('PosY')
Это работает нормально, поскольку делает то, что я хочу, но я получаю следующее от разработчика Chrome.
[Violation] Forced reflow while executing JavaScript took 51ms
Я понимаю, почему я получаю это от разработчика Chrome. но я хочу знать, есть ли другой способ сделать это, который не даст мне этого [Violation]
Я изучал возможность прослушивания DOM и изменения положения в зависимости от изменений, но это дает то же самое [Violation]
Любые предложения будут высоко оценены, особенно если есть какой-то простой CSS.
Пожалуйста, не используйте jQuery или другие библиотеки.
Комментарии:
1. Может быть, дело во времени — вы пробовали использовать свою команду scroll position в a
setTimeout
?2. Спасибо. Это также было полезно yonatankra.com/layout-reflow