function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
	window.onload = func;
	}else{
	window.onload = function() {
    oldonload();
    func();
    }
  }
}

function addClass(element,value) {
  if (!element.className) {
    element.className = value;
  } else {
    newClassName = element.className;
    newClassName+= " ";
    newClassName+= value;
    element.className = newClassName;
  }
}

function removeClass(element, value){
  var removedClass = element.className;
  var pattern = new RegExp("(^| )" + value + "( |$)");
  removedClass = removedClass.replace(pattern, "$1");
  removedClass = removedClass.replace(/ $/, "");
  element.className = removedClass;
  return true;
}

/*className */
function getElementsByClass(searchClass,node,tag) {
 var classElements = new Array();
 if ( node == null )
  node = document;
 if ( tag == null )
  tag = '*';
 var els = node.getElementsByTagName(tag);
 var elsLen = els.length;
 var pattern = new RegExp("(^|\\s)"+searchClass+"(\\s|$)");
 for (var i = 0, j = 0; i < elsLen; i++) {
  if ( pattern.test(els[i].className) ) {
   classElements[j] = els[i];
   j++;
  }
 }
 return classElements;
}

/*nextSibling*/
function get_nextSibling(n){
	var y = n.nextSibling;
	while (y.nodeType != 1) {
		y = y.nextSibling;
	}
	return y;	
}
/*firstChild*/
function get_firstChild(n){
	var y = n.firstChild;
	while (y.nodeType != 1) {
		y = y.nextSibling;
	}
	return y;		
}
/*lastChild*/
function get_lastChild(n){
	var y = n.lastChild;
	while (y.nodeType != 1) {
		y = y.previousSibling;
	}
	return y;		
}

/*previousSibling*/
function get_previousSibling(n){
	var y=n.previousSibling;
	while (y.nodeType!=1){
	y=y.previousSibling;
	}
	return y;
}


/*break ul tag*/
function breakul(ul_ID,li_num){
		if (!document.getElementById(ul_ID)) return false;
		var divid = document.getElementById(ul_ID).parentNode; 
		var sfEls = divid.getElementsByTagName("li"); 
		var loopCount = Math.ceil(sfEls.length/li_num) - 1; 
		//返回指定数字或表达式的上限值。数字的上限值是>=该数字的最小整数。
		for(var less = 0;less<loopCount;less++) {
			var bod = document.createElement("ul");  
			divid.appendChild(bod);
			for(var i = 0;i<li_num;i++) {
					   if(sfEls[li_num] && ((less+1)*li_num +i)<sfEls.length){
					   bod.appendChild(sfEls[li_num]);
			}  
		}   
	}
}

function all_func(){
	breakul('break_hangqing',6);
	breakul('break_weihu',6);	
	breakul('break_shangjia',5);	
	tabs("car_tab_ul","data_table","best_car",true);
	tabs("car_tab_ul2","data_table2","best_car2",true);
	tabs("car_tab_ul3","data_table3",null,true);
	tabs("sub_ul","sub_con",null,true);
	tabs("sub_news","sub_news_con",null,true);	
	tabs("rank_newcar_tab","rank_newcar",null,true);
	tabs("pageTop","ctab",null,true);
}
//addLoadEvent(all_func)


/*==================focus=====================*/

function f_div_onclick(){
	if (!document.getElementById("focus_chart")) return false;
	var focus_box = document.getElementById("focus_chart");
	var f_p = focus_box.getElementsByTagName("p");
	var f_em = focus_box.getElementsByTagName("em");
	var f_div = focus_box.getElementsByTagName("div");
	var getc = getElementsByClass("current",focus_box,"div");
	
	getc[0].style.width=getc[0].clientWidth + "px";//load width
	
	for(var i=0;i<f_em.length;i++){
		f_div[i].onmouseover = function(){bt_autokey = true;};//key
		f_div[i].onmouseout = function(){bt_autokey = false;};//key	
		
		f_p[i].style.display = "none";
		f_p[0].style.display = "block";
		
		f_em[i].num = i;
		f_em[i].onclick = function(){		
		
			var getc = getElementsByClass("current",focus_box,"div");
			
			if(getc[0].style.width != bt_max_width+"px"){return false};//unable quick click
			if(getc[0]==this.parentNode.parentNode){return false};//unable click current
			
			widthElement(getc[0].id,bt_min_width,bt_interval);			
			widthElement(f_div[this.num].id,bt_max_width,bt_interval);
			removeClass(getc[0],"current");
			addClass(f_div[this.num],"current");
			focusbigimg(f_div[this.num]);
			
			return false;
		}
	
	}

}
addLoadEvent(f_div_onclick);



/*imgchange*/
function focusbigimg(obj){	
	var focus_box = document.getElementById("focus_chart");
	var divs = focus_box.getElementsByTagName("div");
	var ps = focus_box.getElementsByTagName("p");		
	
	for(var i=0;i<ps.length;i++){
		if (divs[i]==obj){ps[i].style.display = "block";}
		else{ps[i].style.display = "none";}
	}
}

/*wdith*/
function widthElement(elementID,final_width,interval) {
  if (!document.getElementById) return false;
  if (!document.getElementById(elementID)) return false;
  var elem = document.getElementById(elementID);
  if (elem.movement) {
    clearTimeout(elem.movement);
  }
  if (!elem.style.width) {
    elem.style.width = "0px";
  }
  var xpos = parseInt(elem.style.width);
  if (xpos == final_width) {
	 return true;	
  }  
  if (xpos < final_width) {
    var dist = Math.ceil((final_width - xpos)/3);
    xpos = xpos + dist;
  }
  if (xpos > final_width) {
    var dist = Math.ceil((xpos - final_width)/3);
    xpos = xpos - dist;
  }
  elem.style.width = xpos + "px";
  var repeat = "widthElement('"+elementID+"',"+final_width+","+interval+")";
  elem.movement = setTimeout(repeat,interval);
}

/*auto*/
function focusAuto(){
	
	if(bt_autokey) {return false;}//key
	
	if (!document.getElementById("focus_chart")) return false;
	var focus_box = document.getElementById("focus_chart");
	var f_div = focus_box.getElementsByTagName("div");

	var getc = getElementsByClass("current",focus_box,"div");
	li_active();
	
	var getc = getElementsByClass("current",focus_box,"div");
	focusbigimg(getc[0]);
	
	function li_active(){
			//var nowID = document.getElementById("c_now");
			if(get_lastChild(focus_box).className == "current" && get_lastChild(focus_box).style.width == bt_max_width+"px" ){
					removeClass(f_div[f_div.length-1], "current");		
					addClass(f_div[0],"current")	
					widthElement(f_div[f_div.length-1].id,bt_min_width,bt_interval);
					widthElement(f_div[0].id,bt_max_width,bt_interval);
					return false;
				}
			if(getc[0].style.width == bt_max_width+"px"){
				removeClass(getc[0], "current");			
				addClass(get_nextSibling(get_nextSibling(getc[0])),"current")
				widthElement(getc[0].id,bt_min_width,bt_interval);
				widthElement(get_nextSibling(get_nextSibling(getc[0])).id,bt_max_width,bt_interval);
				}
	}
}
//addLoadEvent(focusAuto);

var bt_settime = setInterval('focusAuto()',3000);
var bt_autokey = false;
var bt_interval = 30;	
var bt_min_width = 18;
var bt_max_width = 256;
	
	
	

	
	

