/
githubmirror
/
fullPage.js
Обзор
Документация
Войти
/
githubmirror
/
fullPage.js
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/js/scroll/skipIntermediateItems.js
26 строк
1 KB
Alvaro Trigo López
- Enhancement: new option `skipIntermediateItems` to skip the animation when jumping non consecutive sections/slides #4643
19 авг 2024, 14:50
19 авг 2024, 14:50
bb89177
Код
Авторство
О чём код?
import { EventEmitter } from '../common/eventEmitter.js'; import { events } from '../common/events.js'; import { getOptions, getOriginals, setVariableState } from '../common/options.js'; import { setScrollingSpeed } from '../speed.js'; EventEmitter.on(events.onPerformMovement, onSlideOrScroll); EventEmitter.on(events.afterSectionLoads, afterPanelLoad); EventEmitter.on(events.onSlideLeave, onSlideOrScroll); EventEmitter.on(events.afterSlideLoads, afterPanelLoad); function onSlideOrScroll(params){ var skipValue = getOptions().skipIntermediateItems; var scrollType = params.items.origin.isSection ? 'sections' : 'slides'; var areConsecutivePanels = Math.abs(params.items.origin.index() - params.items.destination.index()) > 1; var doesApply = (skipValue === true || skipValue === scrollType) && areConsecutivePanels; if(doesApply){ setScrollingSpeed (0, 'internal'); } } function afterPanelLoad(params){ if(getOptions().skipIntermediateItems){ setVariableState('scrollingSpeed', getOriginals().scrollingSpeed, 'internal'); } }