view 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 source

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);
		});
	});
};