This repository has been archived on 2024-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
memberdb/public/mt/assets/pages/scripts/bs-carousel.js
2017-08-03 16:35:36 +10:00

49 lines
1.7 KiB
JavaScript

var BsCarousel = function () {
// Carousel interval
// $('.carousel').carousel({
// interval: 1000
// });
// smart height detection for all major screens
// if (Layout.getViewPort().width > 1600) {
// height = $(window).height() - $('.subscribe').outerHeight(); // full height for high resolution
// } else if (Layout.getViewPort().height > height) {
// height = Layout.getViewPort().height;
// }
(function( $ ) {
//Function to animate slider captions
function doAnimations( elems ) {
//Cache the animationend event in a variable
var animEndEv = 'webkitAnimationEnd animationend';
elems.each(function () {
var $this = $(this),
$animationType = $this.data('animation');
$this.addClass($animationType).one(animEndEv, function () {
$this.removeClass($animationType);
});
});
}
//Variables on page load
var $myCarousel = $('#carousel-example-generic'),
$firstAnimatingElems = $myCarousel.find('.item:first').find("[data-animation ^= 'animated']");
//Initialize carousel
$myCarousel.carousel();
//Animate captions in first slide on page load
doAnimations($firstAnimatingElems);
//Pause carousel
$myCarousel.carousel('pause');
//Other slides to be animated on carousel slide event
$myCarousel.on('slide.bs.carousel', function (e) {
var $animatingElems = $(e.relatedTarget).find("[data-animation ^= 'animated']");
doAnimations($animatingElems);
});
})(jQuery);
}();