На основании кода из codrops с этой страницы: Codrops article, я хотел добавить слайдер продукта в карусель для бутстрапа.Сделать бутстрап карусельной пули слайд другой карусель
Это Java-код, который делает бутылку анимации работы:
(function() {
var support = { animations : Modernizr.cssanimations },
animEndEventNames = {
'WebkitAnimation' : 'webkitAnimationEnd',
'OAnimation' : 'oAnimationEnd',
'msAnimation' : 'MSAnimationEnd',
'animation' : 'animationend'
},
// animation end event name
animEndEventName = animEndEventNames[ Modernizr.prefixed('animation') ],
component = document.getElementById('products'),
items = component.querySelector('ul.itemwrap').children,
current = 0,
itemsCount = items.length,
navNext = document.getElementById('move-right'),
navPrev = document.getElementById('move-left'),
navOne = document.getElementById('bullet-sl')
isAnimating = false;
function init() {
navNext.addEventListener('click', function(ev) { ev.preventDefault(); navigate('next'); });
navPrev.addEventListener('click', function(ev) { ev.preventDefault(); navigate('prev'); });
}
function navigate(dir) {
if(isAnimating) return false;
isAnimating = true;
var cntAnims = 0;
var currentItem = items[ current ];
if(dir === 'next') {
current = current < itemsCount - 1 ? current + 1 : 0;
}
else if(dir === 'prev') {
current = current > 0 ? current - 1 : itemsCount - 1;
}
var nextItem = items[ current ];
var onEndAnimationCurrentItem = function() {
this.removeEventListener(animEndEventName, onEndAnimationCurrentItem);
classie.removeClass(this, 'current');
classie.removeClass(this, dir === 'next' ? 'navOutNext' : 'navOutPrev');
++cntAnims;
if(cntAnims === 2) {
isAnimating = false;
}
}
var onEndAnimationNextItem = function() {
this.removeEventListener(animEndEventName, onEndAnimationNextItem);
classie.addClass(this, 'current');
classie.removeClass(this, dir === 'next' ? 'navInNext' : 'navInPrev');
++cntAnims;
if(cntAnims === 2) {
isAnimating = false;
}
}
if(support.animations) {
currentItem.addEventListener(animEndEventName, onEndAnimationCurrentItem);
nextItem.addEventListener(animEndEventName, onEndAnimationNextItem);
}
else {
onEndAnimationCurrentItem();
onEndAnimationNextItem();
}
classie.addClass(currentItem, dir === 'next' ? 'navOutNext' : 'navOutPrev');
classie.addClass(nextItem, dir === 'next' ? 'navInNext' : 'navInPrev');
}
init(); })();
Всем это хорошо, когда я использую стрелку, чтобы перейти к следующему слайду, но то, что я попытка выполнить это, чтобы заставить его работать с навигацией по пуле в нижней части. В настоящий момент пулевая навигация только перемещает слайды из карусели бутстрапа, и я считаю, что код из треков слишком сложно понять для меня.
он работает с обеими стрелами и пулями http://jsfiddle.net/582rfp7d/ –
без пагинацией styling http://jsfiddle.net/582rfp7d/1/ –
с цветными фонов http://jsfiddle.net/582rfp7d/3/ –