|
Server : Apache/2.4.62 System : FreeBSD fbsdweb2.web.rcn.net 14.1-RELEASE FreeBSD 14.1-RELEASE releng/14.1-n267679-10e31f0946d8 GENERIC amd64 User : www ( 80) PHP Version : 8.3.8 Disable Function : NONE Directory : /domains/steald1/royalslider/dev/modules/ |
Upload File : |
(function($) {
"use strict";
/**
*
* RoyalSlider auto height module
* @version 1.0.3:
*
* 1.0.2
* - Changed "on" to "one" in afterInit event listener
* - Removed id="clear"
*
* 1.0.3
* - added rsAutoHeightChange event
* - added minAutoHeight
* - transition is now enabled only after first height
*/
$.extend($.rsProto, {
_initAutoHeight: function() {
var self = this;
if(self.st.autoHeight) {
var holder,
tH,
currSlide,
currHeight,
firstTime = true,
updHeight = function(animate) {
currSlide = self.slides[self.currSlideId];
holder = currSlide.holder;
if(holder) {
tH = holder.height();
if(tH && tH !== currHeight && tH > (self.st.minAutoHeight || 30) ) {
self._wrapHeight = tH;
if(self._useCSS3Transitions || !animate) {
self._sliderOverflow.css('height', tH);
} else {
self._sliderOverflow.stop(true,true).animate({height: tH}, self.st.transitionSpeed);
}
self.ev.trigger('rsAutoHeightChange', tH);
// Apply CSS transitons
if(firstTime) {
if(self._useCSS3Transitions) {
// force reflow
setTimeout(function() {
self._sliderOverflow.css(self._vendorPref + 'transition', 'height ' + self.st.transitionSpeed + 'ms ease-in-out');
},16);
}
firstTime = false;
}
}
}
};
self.ev.on('rsMaybeSizeReady.rsAutoHeight', function(e, slideObject) {
if(currSlide === slideObject) {
updHeight();
}
});
self.ev.on('rsAfterContentSet.rsAutoHeight', function(e, slideObject) {
if(currSlide === slideObject) {
updHeight();
}
});
self.slider.addClass('rsAutoHeight');
self.ev.one('rsAfterInit', function() {
setTimeout(function() {
updHeight(false);
setTimeout(function() {
self.slider.append('<div style="clear:both; float: none;"></div>');
}, 16);
}, 16);
});
self.ev.on('rsBeforeAnimStart', function() {
updHeight(true);
});
self.ev.on('rsBeforeSizeSet' , function() {
setTimeout(function() {
updHeight(false);
}, 16);
});
}
}
});
$.rsModules.autoHeight = $.rsProto._initAutoHeight;
})(jQuery);