> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aftersell.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Не прокручивается страница магазина после закрытия Upcart

> В этой статье описано, как исправить проблемы с прокруткой страницы магазина, возникающие после закрытия Upcart.

<div id="overview">
  ## Обзор
</div>

Если страница вашего магазина перестаёт прокручиваться после закрытия Upcart, вероятная причина — логика вашей темы, которая блокирует прокрутку страницы, пока открыта корзина-шторка. Кроме того, в Upcart теперь есть встроенные настройки для решения этих проблем, например переопределение существующей логики блокировки прокрутки.

Исправить это можно с помощью встроенных настроек Upcart или добавив небольшую кастомизацию, устраняющую блокировку прокрутки.

***

Как это исправить

<div id="using-built-in-solutions">
  # Использование встроенных решений
</div>

В большинстве случаев встроенные опции в настройках Upcart могут устранить проблемы с прокруткой без необходимости в собственном коде.

1. **Включите «Override existing scroll locking logic»**:

   * Откройте Cart Editor в настройках Upcart.
   * Перейдите в **Settings** → **Cart settings**, затем разверните **Advanced Settings**.
   * Включите **Override existing scroll locking logic**. Её описание охватывает именно этот случай: тема или стороннее приложение оставляет прокрутку страницы заблокированной после закрытия корзины.

   Отдельной настройки прокрутки для мобильных устройств или оверлея нет — этот единственный флажок охватывает оба случая.

Выполните следующие шаги, чтобы применить кастомизацию, восстанавливающую прокрутку страницы после закрытия корзины.

***

<div id="accessing-custom-html-settings">
  ## Доступ к настройкам Custom HTML
</div>

1. Откройте приложение **Upcart** из панели управления Shopify.
2. Перейдите в **Cart Editor**.
3. Откройте **Settings** и выберите вкладку **Custom HTML**. Settings — это ряд вкладок; если вы не видите Custom HTML, она находится за пунктом **More settings**.

***

<div id="adding-the-code">
  ## Добавление кода
</div>

1. Для сложных или специфических случаев, когда встроенные решения не устраняют проблему, вы можете применить собственный HTML-код в Upcart. Выберите, где применить HTML-код в Upcart. Для этого исправления выберите раздел **Above Announcements/Rewards**.
2. Добавьте следующий фрагмент кода:

```
<script>  
window.upcartSubscribeCartOpened(() => {  
  var elementLockingThePage = document.querySelector('body');  
  if (elementLockingThePage != null) {  
    elementLockingThePage.setAttribute('style', 'overflow-Y:hidden !important');  
  }  
});  
window.upcartSubscribeCartClosed(() => {  
  var elementLockingThePage = document.querySelector('body');  
  if (elementLockingThePage != null) {  
    elementLockingThePage.setAttribute('style', 'overflow-Y:scroll !important');  
  }  
});  
</script>
```

<Note>
  **Примечание об устаревших методах:** обратные вызовы `window.upcartOnCartOpened` и `window.upcartOnCartClosed` по-прежнему работают, но признаны устаревшими и выводят предупреждения в консоль. Используйте `upcartSubscribeCartOpened` и `upcartSubscribeCartClosed` во всех новых скриптах.
</Note>

1. Сохраните изменения.
2. Обновите витрину и протестируйте закрытие корзины, чтобы убедиться, что прокрутка восстановлена.

***

<div id="why-this-happens">
  ## Почему это происходит
</div>

Когда Upcart открывается, он скрывает собственную корзину-шторку вашего магазина и занимает её визуальное пространство. Однако некоторые темы содержат код, блокирующий прокрутку страницы, когда активна какая-либо шторка. После закрытия Upcart эта блокировка может остаться, не позволяя странице прокручиваться. На мобильных устройствах могут возникать дополнительные проблемы, например сохраняющиеся оверлеи или невозможность нажимать на страницу. Эти проблемы часто связаны с особенностями блокировки прокрутки на мобильных устройствах или несброшенными оверлеями.

Приведённый выше скрипт восстанавливает нормальную прокрутку, вручную сбрасывая свойство overflow страницы при открытии или закрытии корзины.

***

Нужна помощь или дальнейшее устранение неполадок

<div id="additional-steps-before-contacting-support">
  # Дополнительные шаги перед обращением в поддержку
</div>

1. Убедитесь, что включена настройка **Override existing scroll locking logic**.
2. Ещё раз проверьте, не мешают ли собственный код или сторонние скрипты.

Если после применения исправления проблемы с прокруткой сохраняются, ваша тема может использовать другой селектор или собственную логику прокрутки.

Обратитесь в **поддержку Upcart** за помощью в определении правильного селектора или свяжитесь с **разработчиком вашей темы** для настройки параметров прокрутки темы.
