UNPKG

scrollscene

Version:

ScrollScene is an extra layer on top of ScrollMagic as well as using IntersectionObserver to achieve similar effects.

42 lines (32 loc) 3.32 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.scrollAnimationInit = void 0; var _lodash = _interopRequireDefault(require("lodash.throttle")); var _isObject = require("./isObject"); var scrollAnimationInit = function scrollAnimationInit(breakpoints, init, destroy) { if ((0, _isObject.isObject)(breakpoints)) { var keys = Object.keys(breakpoints).reverse(); var fn = function fn() { for (var index = 0; index < keys.length; index += 1) { var breakpoint = parseFloat(keys[index]); if (breakpoint <= window.innerWidth) { if (breakpoints[breakpoint]) { init(); } else { destroy(); } break; } } }; fn(); window.addEventListener('resize', (0, _lodash["default"])(fn, 700)); } else { init(); } }; exports.scrollAnimationInit = scrollAnimationInit; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9oZWxwZXJzL3Njcm9sbEFuaW1hdGlvbkluaXQudHMiXSwibmFtZXMiOlsic2Nyb2xsQW5pbWF0aW9uSW5pdCIsImJyZWFrcG9pbnRzIiwiaW5pdCIsImRlc3Ryb3kiLCJrZXlzIiwiT2JqZWN0IiwicmV2ZXJzZSIsImZuIiwiaW5kZXgiLCJsZW5ndGgiLCJicmVha3BvaW50IiwicGFyc2VGbG9hdCIsIndpbmRvdyIsImlubmVyV2lkdGgiLCJhZGRFdmVudExpc3RlbmVyIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7QUFDQTs7QUFFTyxJQUFNQSxtQkFBbUIsR0FBRyxTQUF0QkEsbUJBQXNCLENBQUNDLFdBQUQsRUFBY0MsSUFBZCxFQUFvQkMsT0FBcEIsRUFBZ0M7QUFDakUsTUFBSSx3QkFBU0YsV0FBVCxDQUFKLEVBQTJCO0FBQ3pCLFFBQU1HLElBQUksR0FBR0MsTUFBTSxDQUFDRCxJQUFQLENBQVlILFdBQVosRUFBeUJLLE9BQXpCLEVBQWI7O0FBRUEsUUFBTUMsRUFBRSxHQUFHLFNBQUxBLEVBQUssR0FBTTtBQUNmLFdBQUssSUFBSUMsS0FBSyxHQUFHLENBQWpCLEVBQW9CQSxLQUFLLEdBQUdKLElBQUksQ0FBQ0ssTUFBakMsRUFBeUNELEtBQUssSUFBSSxDQUFsRCxFQUFxRDtBQUNuRCxZQUFNRSxVQUFVLEdBQUdDLFVBQVUsQ0FBQ1AsSUFBSSxDQUFDSSxLQUFELENBQUwsQ0FBN0I7O0FBRUEsWUFBSUUsVUFBVSxJQUFJRSxNQUFNLENBQUNDLFVBQXpCLEVBQXFDO0FBQ25DLGNBQUlaLFdBQVcsQ0FBQ1MsVUFBRCxDQUFmLEVBQTZCO0FBQzNCUixZQUFBQSxJQUFJO0FBQ0wsV0FGRCxNQUVPO0FBQ0xDLFlBQUFBLE9BQU87QUFDUjs7QUFFRDtBQUNEO0FBQ0Y7QUFDRixLQWREOztBQWdCQUksSUFBQUEsRUFBRTtBQUVGSyxJQUFBQSxNQUFNLENBQUNFLGdCQUFQLENBQXdCLFFBQXhCLEVBQWtDLHdCQUFTUCxFQUFULEVBQWEsR0FBYixDQUFsQztBQUNELEdBdEJELE1Bc0JPO0FBQ0xMLElBQUFBLElBQUk7QUFDTDtBQUNGLENBMUJNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHRocm90dGxlIGZyb20gJ2xvZGFzaC50aHJvdHRsZSdcbmltcG9ydCB7IGlzT2JqZWN0IH0gZnJvbSAnLi9pc09iamVjdCdcblxuZXhwb3J0IGNvbnN0IHNjcm9sbEFuaW1hdGlvbkluaXQgPSAoYnJlYWtwb2ludHMsIGluaXQsIGRlc3Ryb3kpID0+IHtcbiAgaWYgKGlzT2JqZWN0KGJyZWFrcG9pbnRzKSkge1xuICAgIGNvbnN0IGtleXMgPSBPYmplY3Qua2V5cyhicmVha3BvaW50cykucmV2ZXJzZSgpXG5cbiAgICBjb25zdCBmbiA9ICgpID0+IHtcbiAgICAgIGZvciAobGV0IGluZGV4ID0gMDsgaW5kZXggPCBrZXlzLmxlbmd0aDsgaW5kZXggKz0gMSkge1xuICAgICAgICBjb25zdCBicmVha3BvaW50ID0gcGFyc2VGbG9hdChrZXlzW2luZGV4XSlcblxuICAgICAgICBpZiAoYnJlYWtwb2ludCA8PSB3aW5kb3cuaW5uZXJXaWR0aCkge1xuICAgICAgICAgIGlmIChicmVha3BvaW50c1ticmVha3BvaW50XSkge1xuICAgICAgICAgICAgaW5pdCgpXG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGRlc3Ryb3koKVxuICAgICAgICAgIH1cblxuICAgICAgICAgIGJyZWFrXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBmbigpXG5cbiAgICB3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcigncmVzaXplJywgdGhyb3R0bGUoZm4sIDcwMCkpXG4gIH0gZWxzZSB7XG4gICAgaW5pdCgpXG4gIH1cbn1cbiJdfQ==