Mercurial Hosting > nabble
diff src/nabble/view/web/util/nabblegallery-1.2.js @ 0:7ecd1a4ef557
add content
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Thu, 21 Mar 2019 19:15:52 -0600 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/nabble/view/web/util/nabblegallery-1.2.js Thu Mar 21 19:15:52 2019 -0600 @@ -0,0 +1,73 @@ +function fixGalleryWidth(id) { + var $slider = $('#slider'+id); + var w = Math.min($slider.width(),$(window).width()-20); + $('#gallery'+id).width(w-60); + var $gview = $('#gallery-view'+id); + $slider.height($gview.height()); + $gview.css({ + position: 'absolute', + left: $slider.offset().left, + width: w + }); + // hack for IE7 + var ie7 = $.browser.msie && $.browser.version.indexOf('8.') == -1; + if (ie7) { + var $gv = $('#gallery-view'+id); + $gv.css('position','absolute'); + $('#slider'+id).height($gv.height()); + } +}; + +function galleryReady(id) { + $(document).ready(function() { + var $prev = $('#prev'+id); + var $next = $('#next'+id); + var $imgs = $('#images'+id); + var $dv = $('#gallery'+id); + var left = 0; + var inc = 300; + + $(window).resize(function() { + fixGalleryWidth(id); + showArrows(); + }); + + function showArrows() { + if ($imgs.width() <= $dv.width()) { + $prev.hide(); + $next.hide(); + } else if (left == 0) { + $prev.hide(); + $next.show(); + } else { + var tw = $imgs.width(); + var vw = $dv.width(); + var mw = tw-vw; + if (left <= -mw) { + $prev.show(); + $next.hide(); + } else { + $prev.show(); + $next.show(); + } + } + }; + + fixGalleryWidth(id); + showArrows(); + setTimeout(showArrows, 2000); + $prev.click(function() { + left+=inc; + left = left > 0? 0 : left; + $imgs.animate({marginLeft: left+'px'}, 400, showArrows); + }); + $next.click(function() { + left-=inc; + var tw = $imgs.width(); + var vw = $dv.width(); + var mw = tw-vw; + left = left < -mw? -mw : left; + $imgs.animate({marginLeft: left+'px'}, 400, showArrows); + }); + }); +}; \ No newline at end of file