/*
以展开方式显示、隐藏层
last_no_info_id = getID("last_no_info");
var _slippage = new SlippageDiv("_slippage");
_slippage.init(last_no_info_id, 20, 50);
function show_last_no(){ 
	if(last_no_info_id.style.display == "none"){
		_slippage.start("down");
	}else{
		_slippage.start("up");
	}
}
#####################
<a href=# onclick='_slippage.auto()'></a>
*/
function SlippageDiv(name){
	var self = this;
	this.name = name;  //实例名称

	this.max_length = 0;
	this.speed = 10;
	this.step = 10;
	this.div = null;

	this.temp_length = 0;
	
	this.onDownStart = function(){};
	this.onDownFinish = function(){};
	this.onUpStart = function(){};
	this.onUpFinish = function(){};
}
/*
*/
SlippageDiv.prototype.init = function(id, speed, step){
	this.div = id;
	this.speed = speed;
	this.step = step;
	if(this.div.style.display=="none"){
		this.onDownStart();
		this.onUpStart();
		this.div.style.display="";
		this.max_length = get_height(this.div); 
		this.div.style.display="none";
		
		this.onDownFinish();
		this.onUpFinish();
	}else{
		this.max_length = get_height(this.div); 
	}
	
}
SlippageDiv.prototype.auto = function(){
	if(this.div.style.display == "none"){
		this.start("down");
	}else{
		this.max_length = get_height(this.div); 
		this.start("up");
	}
}
SlippageDiv.prototype.start = function(type){
	switch(type){
		case 'down':
			this.onDownStart();
			this.div.style.display="";
			this.div.style.overflow = "hidden";
			this.div.style.height = "0px";
			this.down();

			break;
		case 'up':
			this.onUpStart();
			this.div.style.overflow = "hidden";
			this.up();
			break;
	}
}
SlippageDiv.prototype.down = function(){
 	var h = parseInt(this.div.style.height, 10);
	if(h < this.max_length){
		this.div.style.height = (h+this.step) + "px";
		window.setTimeout(this.name + ".down()", this.speed);
	}else{
		this.div.style.height = this.max_length + "px";
		this.div.style.overflow = "visible";
		this.onDownFinish();
		
	}	
}
SlippageDiv.prototype.up = function(){
 	var h = parseInt(this.div.style.height, 10);
	if(h > this.step){
		this.div.style.height = (h-this.step) + "px";
		window.setTimeout(this.name + ".up()", this.speed);
	}else{
		this.div.style.display="none";
		this.div.style.height = this.max_length + "px";
		this.onUpFinish();
	}
}

