scrollIntoView
Прокрутить элемент в область видимости для Десктопа/Мобильного Веба И Мобильных Нативных Приложений.
информация
Прокрутка для Мобильных Нативных Приложений выполняется на основе мобильной команды swipe.
Использование
$(selector).scrollIntoView({ behavior, block, inline, direction, maxScrolls, duration, scrollableElement, percent })
Параметры
| Имя | Тип | Детали |
|---|---|---|
optionsнеобязательно | object, boolean | опции для Element.scrollIntoView(). По умолчанию для десктоп/мобильного веба: { block: 'start', inline: 'nearest' } По умолчанию для Мобильного Нативного Приложения { maxScrolls: 10, scrollDirection: 'down' } |
| Только для Десктоп/Мобильного Веба | ||
options.behaviorнеобязательно | string | См. MDN Reference. ТОЛЬКО-ДЛЯ-ВЕБА (Десктоп/Мобильный) |
options.blockнеобязательно | string | См. MDN Reference. ТОЛЬКО-ДЛЯ-ВЕБА (Десктоп/Мобильный) |
options.inlineнеобязательно | string | См. MDN Reference. ТОЛЬКО-ДЛЯ-ВЕБА (Десктоп/Мобильный) |
| Только для Мобильного Нативного Приложения | ||
options.directionнеобязательно | string | Может быть одним из down, up, left или right, по умолчанию up. ТОЛЬКО-ДЛЯ-МОБИЛЬНОГО-НАТИВНОГО-ПРИЛОЖЕНИЯ |
options.maxScrollsнеобязательно | number | Максимальное количество прокруток до завершения поиска элемента, по умолчанию 10. ТОЛЬКО-ДЛЯ-МОБИЛЬНОГО-НАТИВНОГО-ПРИЛОЖЕНИЯ |
options.durationнеобязательно | number | Продолжительность свайпа в миллисекундах. По умолчанию 1500 мс. Чем меньше значение, тем быстрее свайп.ТОЛЬКО-ДЛЯ-МОБИЛЬНОГО-НАТИВНОГО-ПРИЛОЖЕНИЯ |
options.scrollableElementнеобязательно | Element | Элемент, который используется для прокрутки. Если элемент не указан, будет использоваться следующий селектор для iOS -ios predicate string:type == "XCUIElementTypeApplication" и следующий для Android //android.widget.ScrollView'. Если несколько элементов соответствуют селектору по умолчанию, то по умолчанию будет выбран первый соответствующий элемент. ТОЛЬКО-ДЛЯ-МОБИЛЬНОГО-НАТИВНОГО-ПРИЛОЖЕНИЯ |
options.percentнеобязательно | number | Процент (по умолчанию) прокручиваемого элемента для свайпа. Это значение от 0 до 1. По умолчанию 0.95.НИКОГДА не делайте свайп с точного верха|низа|левой|правой стороны экрана, вы можете вызвать, например, панель уведомлений или другие функции ОС/Приложения, что может привести к неожиданным результатам. ТОЛЬКО-ДЛЯ-МОБИЛЬНОГО-НАТИВНОГО-ПРИЛОЖЕНИЯ |
Примеры
desktop.mobile.web.scrollIntoView.js
it('should demonstrate the desktop/mobile web scrollIntoView command', async () => {
const elem = await $('#myElement');
// scroll to specific element
await elem.scrollIntoView();
// center element within the viewport
await elem.scrollIntoView({ block: 'center', inline: 'center' });
});
mobile.native.app.scrollIntoView.js
it('should demonstrate the mobile native app scrollIntoView command', async () => {
const elem = await $('#myElement');
// scroll to a specific element in the default scrollable element for Android or iOS for a maximum of 10 scrolls
await elem.scrollIntoView();
// Scroll to the left in the scrollable element called '#scrollable' for a maximum of 5 scrolls
await elem.scrollIntoView({
direction: 'left',
maxScrolls: 5,
scrollableElement: $('#scrollable')
});
});