function subnavFix(){
	$("#nav li").mousemove(function(){
		var p=$("#nav");
		var s=$(this).children(".sub");
		if(($(this).offset().left+s.outerWidth())>(p.offset().left+p.outerWidth()))
			s.css("left",p.offset().left+p.outerWidth()-$(this).offset().left-s.outerWidth()+"px");
	});
}
function courseScr(){
	var type=document.getElementById('hot_list');
	var coursehot = document.getElementById('coursehot');
	if(type){
		var lis = document.getElementById('hot_list').getElementsByTagName('li');
		var t2=null, cur_a = lis[0];
		cur_a.className = 'act';
	}else{
		var lis = coursehot.getElementsByTagName('ul');
	}
	var tem = 0, cur=1, t=null;
	function scrollUp(e){
		tem += (e - tem)*.1;
		coursehot.scrollTop = tem;
	}
	function scrollDown(e){
		tem -= (tem-e)*.1
		coursehot.scrollTop = tem;
	}
	function play(n){
		if(t)clearTimeout(t);
		var len = n*110;
		if(len>tem){
			t = setInterval(function(){scrollUp(len)},20);
		}else{
			t = setInterval(function(){scrollDown(len)},20);
		}
	}
	function start(){
		if(cur>lis.length-1)cur=0;
		if(type){
			cur_a.className='';
			cur_a = lis[cur];
			cur_a.className = 'act';
			//cursos_hot.scrollTop = (cur+1)*110;
		}
		play(cur);
		cur++;
	}
	t2 = setInterval(start, 5000);
	if(type){
		for(var i=0; i<lis.length; i++){
			lis[i].i=i;
			lis[i].onmouseover = function(){
				clearInterval(t);
				clearInterval(t2);
				cur = this.i;
				start();
			}
			lis[i].onmouseout = function(){
				t2 = setInterval(start, 10000);
			}
		}
	}
}

//menuFix
function menuFix(id,cls){
	$(id).hover(
		function(){$(this).addClass(cls);},
		function(){$(this).removeClass(cls);}
	);
}
function changeNavLang(o){
	var temp=$(o).text();
	if(temp){
		$(o).text($(o).next("em").text());
		$(o).next("em").text(temp);
	}
}
//一个选项卡 {id:"id",conts:[".class","tag",":attr"]}
function changeTag(tag,cont,event){
	event=event||"mouseover";
	tag=$('#'+tag+' li');
	tag.eq(0).addClass("act");
	cont=$(cont)||$('#'+tag).siblings("ul");
	tag.each(function(i){
		var self=$(this);
		var curcont=cont.eq(i);
		i>0?curcont.addClass("dn"):self.eq(i).addClass("act");
		self.bind(event,function(){
			if(tag.hasClass("act")) tag.removeClass("act");
			$(this).addClass("act");
			cont.addClass("dn");
			curcont.removeClass("dn");
		});
	});
}

function Flash(url,width,height,wmode,flashvar,param){
	param=param||["",""];
	wmode=wmode||"transparent";
	flashvar=flashvar||"";
	var s="";
	s+='<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="'+ width +'" height="'+ height +'">';
	s+='<param name="allowScriptAccess" value="sameDomain" /><param name="menu" value="false" /><param name="quality" value="high" />';
	s+='<param name="movie" value="'+ url +'" /><param name="wmode" value="'+ wmode +'" /><param name="FlashVars" value="'+ flashvar +'" /><param name="'+param[0]+'" value="'+ param[1] +'" />';
	s+='<embed menu="false" quality="high" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" src="'+ url +'" wmode="'+ wmode +'" width="'+ width +'" height="'+ height +'" FlashVars="'+ flashvar +'" '+param[0]+'="'+ param[1] +'"></embed>'; 
	s+='</object>';
	document.writeln(s);
}

function slideTog(tar,sou,event){
	tar=tar||"div";
	event=event||"mouseenter";
	$(tar+" dd").hide();
	if(sou)$("#"+sou).addClass("act").next("dd").show();
	$(tar+" dt").bind(event,function(){
		$(this).next("dd").slideToggle("fast").siblings("dd:visible").slideUp("fast");
		$(this).toggleClass("act").siblings("dt").removeClass("act");
	});
}

//正则及表单验证函数段
function isEmpty(text){
	return text==""||text.lenght==0||text==null;
}
function isEq(arg){
	var b=false;
	if ($.isArray(arg)){
		for(var i=0;i<arg.length-1;i++){
			b=arg[i]==arg[i+1];
			if(!b){
				return b;
			}
		}
	}
	return b;
}
function isText(text){
	var texts=/^[\w]+$/;
	return texts.test(text);
}
function isNumeric(text){
	var numeric=/^[\d]*$/;
	return numeric.test(text);
}
function isPrice(text){
	var price=/^[\d]*(\.[\d]{1,2})*$/;
	return price.test(text);
}
function isPass(text){
	var pass=/^[\S]+$/;
	return pass.test(text);
}
function isEmail(text){
	var email=/^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@(([0-9a-zA-Z])+([-\w]*[0-9a-zA-Z])*\.)+[a-zA-Z]{2,5})?$/;
	return email.test(text);
}
function isTel(text){
	var tel=/^(\(0\d{2,3}\)|0\d{2,3}-)?[2-9]\d{5,7}(\(\d{2,5}\)|-\d{2,5})?|(1(3|5|8)\d{9})?$/;
	return tel.test(text);
}
function isMobile(text){
	var mobile=/^(1(3|5|8)\d{9})?$/;
	return mobile.test(text);
}
function isCnChar(text){
	var cnChar=/^([\u4e00-\u9fff])*$/;
	return cnChar.test(text);
}
function isZip(text){
	var zip=/^\d{6}$/;
	return zip.test(text);
}
function isCnName(text){
	var cnName=/^([\u4e00-\u9fff])*.{2,}$/;
	return cnName.test(text);
}
function isUrl(text){
	var url=/^(((http|https|ftp|rtsp|mms):(\/\/|\\\\))?((\w|-)+[.])+(net|com|cn|org|cc|tv|gov|or|edu|info|me|ru|la|jp|co|[a-zA-Z]{2,4})(((\/[\~]*|\\[\~]*)(\w|-)*)|[.](\w)+)*(((([?](\w|-)+){1}[=]*))*((\w|-)+){1}((&|&amp;)(\w|-)+[\=](\w|-)+)*)*)$/i;
	return url.test(text);
}
function isFileName(text){
	return !/[\\\/\*\?\|:"<>]/g.test(text);
}
function isDate(text){
	var date=/^[12]\d{3}([\/-])(?:(?:(?:0?[1-9]|1[012])\1(?:0?[1-9]|[1-2]\d))|(?:(?:0?[469]|11)\1(?:30))|(?:(?:0?[13578]|1[02])\1(?:3[01])))$/;
	return text==''||date.test(text);
}
function check(type,text){
	return eval("is"+type.substring(0,1).toUpperCase()+type.substring(1)+"(text)");
}
//验证函数
function validate(options,f){
	//f=f||this;
	options=options||{};
	var msg='';
	$.each(options, function(opt){//f="form"
	//for(var opt in options){//f=this
		var val="";
		var vals=function(arg){
			if(arg.indexOf("&")!=-1){
				var el=arg.split('&');
				var val=[];
				$.each(el, function(i, n){
					val.push(getVal(n,f));
				});
			}
			else
				var val=getVal(arg,f);
			return val;
		}
		if(opt.indexOf("=")!=-1){
			var opts=opt.split("=");
			val=vals(opts[0]);
			if(isEmpty(val)&&opts[1].indexOf("noEmpty")==-1||!isEmpty(val)&&opts[1]=="noEmpty") return;
			var type;
			if(opts[1].indexOf("&")!=-1){
				var type=opts[1].split('&');
				$.each(type, function(i, n){
					msg+=getMsg(val,n,options[opt]);
				});
			}else{
				msg+=getMsg(val,opts[1],options[opt]);
			}
		}
		else{
			val=vals(opt);
			msg+=getMsg(val,'',options[opt]);
		}
	});
	if (msg) {
		alert("请验证以下信息后再次提交:\n\n"+msg);
		return false;
	}
	return true;
}
//取得元素值
var getVal=function(el,f){
	f=f||"form";
	var value=[];
	el=typeof(el)==="object"?$(el):$(f).find('[name='+el+']');
	el.filter(":checked").each(function(){
		if ($(this).filter(":checkbox")){
			value.push($(this).val());
		}
		else
			value=$(this).val();
	});
	el.filter(":selected").each(function(i){
		if ($(this).length>1){
			value.push($(this).val());
		}
		else
			value=$(this).val();
	});
	value=value==[]?'':value;
	return el.length==1?el.val():(value||'');
}
//错误消息输出
var getMsg=function(val,type,msg){
	val=val||'';
	type=type||"noEmpty";
	var error='';
	switch (type){
		case "noEmpty":
			if(isEmpty(val))
				error=msg+" 必填！\n";
			break;
		case "eq":
			if(!isEq(val))
				error=msg+" 必须一致！\n";
			break;
		case "numeric":
		case "email":
		case "tel":
		case "mobile":
		case "date":
		case "zip":
		case "pass":
		case "cnChar":
		case "cnName":
		case "url":
		case "fileName":
		case "price":
			if(!check(type,val))
				error=msg+" 格式不正确！\n";
			break;
		default:
			alert(msg+" 传入的表达式不正确！");
	}
	return error;
}

function addFav(){
    try{
        window.external.addFavorite(window.location.href,document.title);
    }
    catch (e) {
        try{
            window.sidebar.addPanel(window.location.href,document.title, "");
        }
        catch (e){
            alert("加入收藏失败，请使用Ctrl+D进行添加");
        }
    }
}
function setHome(obj){
	try{
		obj.style.behavior='url(#default#homepage)';
		obj.setHomePage(window.location.href);
		alert("首页设置成功！");
	}
	catch(e){
		if(window.netscape) {
			try {
				netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
			}
			catch (e) {
				alert("此操作被浏览器拒绝！\n请在浏览器地址栏输入“about:config”并回车\n然后将 [signed.applets.codebase_principal_support]的值设置为'true',双击即可。");
			}
			var prefs = Components.classes['@mozilla.org/preferences-service;1'].getService(Components.interfaces.nsIPrefBranch);
			prefs.setCharPref('browser.startup.homepage',window.location.href);
			alert("首页设置成功！");
		 }
	}
}


function setMarquee(o){
	var speed=80;
	var marquee=document.getElementById(o);
	var ul2=marquee.getElementsByTagName("ul")[0].cloneNode(true);
	marquee.appendChild(ul2);
	var ul=marquee.getElementsByTagName("ul");
	function Marquee(){
		if(ul[1].offsetTop-marquee.scrollTop<=0)
			marquee.scrollTop-=ul[0].offsetHeight;
		else{
			marquee.scrollTop++;
		}
	}
	var MyMar=setInterval(Marquee,speed);
	marquee.onmouseover=function() {clearInterval(MyMar)};
	marquee.onmouseout=function() {MyMar=setInterval(Marquee,speed)};
}

