UNPKG

@yandex/ui

Version:

Yandex UI components

38 lines (37 loc) 1.18 kB
import { canUseDOM } from '../canUseDOM'; import { isIOS } from '../platform'; import * as StandartScrollLocker from './StandartScrollLocker'; import * as TouchScrollLocker from './TouchScrollLocker'; function ensureElement(element) { return element || document.body; } /** * Добавляет запрет на прокрутку содержимого на DOM-элементе. * * @param container Ссылка на DOM-элемент. По-умолчанию: `document.body` */ export function lock(container) { if (!canUseDOM()) { return; } var element = ensureElement(container); StandartScrollLocker.lock(element); if (isIOS()) { TouchScrollLocker.lock(element); } } /** * Убирает запрет на прокрутку содержимого на DOM-элементе. * * @param container Ссылка на DOM-элемент. По-умолчанию: `document.body` */ export function unlock(container) { if (!canUseDOM()) { return; } var element = ensureElement(container); StandartScrollLocker.unlock(element); if (isIOS()) { TouchScrollLocker.unlock(element); } }