Реализация:
Когда я инициализирую страницу, я загружаю текущий месяц и последующие месяцы. Когда пользователь прокручивает страницу, я использую наблюдатель пересечений, чтобы определить приближение предела и отобразить дополнительный месяц.
Ожидаемое поведение:
При прокрутке вверх , и Chrome, и Firefox добавляют новый месяц в верхнюю часть контейнера прокрутки, сохраняя при этом текущий вид и ожидаемую позицию. Это приводит к появлению дополнительного содержимого вверх в контейнере прокрутки (новый месяц), что позволяет выполнить дополнительную прокрутку вверх.
Поведение Safari:
Когда Safari добавляет новый месяц, позиция прокрутки переходит к началу нового месяца и мгновенно запускает наблюдатель пересечения нового месяца.
Я надеюсь, что кто-нибудь сможет поделиться каким-нибудь свойством CSS, которое может измените это поведение.
В противном случае мне придется (при прокрутке вверх):
- Обнаружить если это браузер Safari.
- Рассчитать размер нового месяца после его отображения.
- Сместить положение прокрутки вручную вниз от нового. месяц
- Надеюсь, что это не помешает текущей работе эластичной прокрутки.
Подробнее здесь: https://stackoverflow.com/questions/790 ... ents-to-th