Код: Выделить всё
// Function to handle opening the search
window.handleCustomSearchOpen = function () {
document.body.classList.add('opensearchpanel');
};
// Function to handle closing the search
window.handleCustomSearchClose = function () {
console.log("Search closed", scrollY);
document.body.classList.remove('opensearchpanel');
};Код: Выделить всё
.opensearchpanel {
overflow: hidden;
position: fixed;
height: 100%;
width: 100%;
}Код: Выделить всё
Search
На мобильном телефоне у меня есть панель поиска, и когда она открывается, она добавляет класс «opensearchpanel». В котором я использую переполнение: скрыто; и он работает должным образом в Chrome и Android, исправив прокрутку. Но в Safari это не работает, и чтобы это исправить, я добавил
Он исправил проблему с прокруткой, но теперь, добавив его, я теряю позицию прокрутки в той позиции, где находился пользователь, она прокручивается экран вверх, и я этого не хочу. Я хочу, чтобы где бы ни находился пользователь, он должен был находиться на своем месте на экране, и экран должен зависать, что означает, что он не должен прокручиваться до тех пор, пока поиск не будет закрыт.
Я также использовал положение: относительное ; вместо фиксированного
Подробнее здесь: https://stackoverflow.com/questions/793 ... -way-to-fi
Мобильная версия