﻿// 浏览图片，$o 图片容器，interv 每图片停留总时间包括淡入，淡出时间，aniInterv淡入，淡出时间。
function hAniImg($o, interv, aniInterv) {
	var interval = interv ? interv : 3000;
	var aniInterval = aniInterv ? aniInterv : 500;

	var timer1 = null;
	var $aniobj = $o;
	var num = $aniobj.children("img").length;
	var pos = 0;
	var showNumber = ($aniobj.children(".aninum").length > 0);

	if (showNumber) {
		var str = "<p class='selected' onclick='ani.setpos(0)'>1</p>";
		for (var i = 1; i < num; i++)
			str += "<p onclick='ani.setpos(" + i + ")'>" + (i + 1) + "</p>";
		$aniobj.children(".aninum").html(str);
	}

	timer1 = setInterval(start, interval);

	function complete() {
		$aniobj.children("img:eq(" + pos + ")").removeClass("selected");
		$aniobj.children(".aninum p:eq(" + pos + ")").removeClass("selected");
		if (++pos >= num) pos = 0;
		$aniobj.children(".aninum p:eq(" + pos + ")").addClass("selected");
		$aniobj.children("img:eq(" + pos + ")").addClass("selected");
		$aniobj.children(".curtain").animate({ "opacity": 0, "-moz-opacity": 0 }, aniInterval);
		$aniobj.children(".curtain")[0].onclick = $aniobj.children("img:eq(" + pos + ")")[0].onclick;
	}

	function start() {
		$aniobj.children(".curtain").animate({ "opacity": 1, "-moz-opacity": 1 }, aniInterval, null, complete);
	}

	this.setpos = function(po) {
		var $obj = $aniobj.children(".curtain");
		clearInterval(timer1);
		timer1 = setInterval(start, interval);
		$obj.stop();
		$obj.css("opacity", 1)
		$obj.css("-moz-opacity", 1);
		$aniobj.children("img:eq(" + pos + ")").removeClass("selected");
		$aniobj.children(".aninum p:eq(" + pos + ")").removeClass("selected");

		pos = po;
		$aniobj.children("img:eq(" + pos + ")").addClass("selected");
		$aniobj.children(".aninum p:eq(" + pos + ")").addClass("selected");
		$obj.animate({ "opacity": 0, "-moz-opacity": 0 }, aniInterval);
	}

	this.setobj = function($o) {
		clearInterval(timer1);
		timer1 = null;
		var $obj = $aniobj.children(".curtain");
		$obj.stop();
		$obj.css("opacity", 0)
		$obj.css("-moz-opacity", 0);
		$aniobj.children("img:eq(" + pos + ")").removeClass("selected");
		$aniobj.children("img:eq(0)").addClass("selected");
		$aniobj.children(".aninum").html("");

		$aniobj = $o;
		num = $aniobj.children("img").length;
		pos = 0;

		var str = "<p class='selected' onclick='ani.setpos(0)'>1</p>";
		for (var i = 1; i < num; i++)
			str += "<p onclick='ani.setpos(" + i + ")'>" + (i + 1) + "</p>";
		$aniobj.children(".aninum").html(str);

		timer1 = setInterval(start, interval);
	}

	this.stop = function(st) {
		if (st && timer1) {
			clearInterval(timer1);
			timer1 = null;
		}
		else if (!st && !timer1)
			timer1 = setInterval(start, interval);
	}
}

