/* Background Stretcher jQuery Plugin © 2009 ajaxBlender.com For any questions please visit www.ajaxblender.com or email us at support@ajaxblender.com Version: 1.2 */ ;(function($){ /* Variables */ var container = null; var allImgs = '', allLIs = '', containerStr = ''; var element = this; var _bgStretcherPause = false; var _bgStretcherTm = null; $.fn.bgStretcher = function(settings){ settings = $.extend({}, $.fn.bgStretcher.defaults, settings); $.fn.bgStretcher.settings = settings; function _build(){ if(!settings.images.length){ return; } _genHtml(); containerStr = '#' + settings.imageContainer; container = $(containerStr); allImgs = '#' + settings.imageContainer + ' IMG'; allLIs = '#' + settings.imageContainer + ' LI'; $(allLIs).hide(); $(allLIs + ':first').show().addClass('bgs-current'); if(!container.length){ return; } $(window).resize(_resize); if(settings.slideShow && $(allImgs).length > 1){ _bgStretcherTm = setTimeout('$.fn.bgStretcher.slideShow()', settings.nextSlideDelay); } _resize(); }; function _resize(){ var winW = $(window).width(); var winH = $(window).height(); var imgW = 0, imgH = 0; // Update container's height container.width(winW); container.height(winH); // Non-proportional resize if(!settings.resizeProportionally){ imgW = winW; imgH = winH; } else { var initW = settings.imageWidth, initH = settings.imageHeight; var ratio = initH / initW; imgW = winW; imgH = winW * ratio; if(imgH < winH){ imgH = winH; imgW = imgH / ratio; } } // Apply new size for images if(!settings.resizeAnimate){ $(allImgs).width(imgW).height(imgH); } else { $(allImgs).animate({width: imgW, height: imgH}, 'normal'); } }; function _genHtml(){ var code = '