anim-scroll
Version:
Small library to animate your web pages
66 lines (55 loc) • 2.2 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _setStyle = _interopRequireDefault(require("../../libs/setStyle"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var _default = (wrapper, options, activeSlide) => {
var evOver = options.isMobile ? 'touchstart' : 'mouseover';
var evOut = options.isMobile ? 'touchend' : 'mouseout';
var nB = wrapper.navBar ? wrapper.navBar.children : {};
var nS = wrapper.navBar ? options.navBarStyle.dots : {};
var aR = wrapper.arrows || {};
var aS = wrapper.arrows ? options.arrowStyle.arrows : {};
var state = '';
var zIndex = '';
var opacity = 0;
function handler(i) {
if (typeof i === 'number' && wrapper.navBar) {
nB[i].children[options.dotIndex].style.transition = nS[state].transition;
(0, _setStyle.default)(nB[i].children[options.dotIndex], nS[state]);
nB[i].children[options.hintIndex].style.zIndex = zIndex;
nB[i].children[options.hintIndex].style.opacity = opacity;
}
if (typeof i === 'string' && wrapper.arrows) {
aR[`arrow${i === 'next' ? 'Next' : 'Prev'}`].firstChild.style.transition = aS[state].transition;
(0, _setStyle.default)(aR[`arrow${i === 'next' ? 'Next' : 'Prev'}`].firstChild, aS[state]);
}
}
function onOver(e) {
if (e.target.ssClick === activeSlide.value) state = 'active';else state = 'hover';
zIndex = 'auto';
opacity = 1;
handler(e.target.ssClick);
}
function onOut(e) {
if (e.target.ssClick === activeSlide.value) state = 'active';else state = 'usual';
zIndex = '-10';
opacity = 0;
handler(e.target.ssClick);
}
if (wrapper.navBar) {
for (var i = 0; i < nB.length - 1; i += 1) {
nB[i].children[options.dotIndex].addEventListener(evOver, onOver);
nB[i].children[options.dotIndex].addEventListener(evOut, onOut);
}
}
if (wrapper.arrows) {
aR.arrowNext.addEventListener(evOver, onOver);
aR.arrowNext.addEventListener(evOut, onOut);
aR.arrowPrev.addEventListener(evOver, onOver);
aR.arrowPrev.addEventListener(evOut, onOut);
}
};
exports.default = _default;