/******************************************************************************
  Crossday Discuz! Board - Common Modules for Discuz!
  Modified by: Crossday Studio (http://crossday.com)
  Based upon:  http://www.cnzzz.com
*******************************************************************************/

var sPop = null;
var postSubmited = false;

function ctlent(obj) {
	if(postSubmited == false && (event.ctrlKey && window.event.keyCode == 13) || (event.altKey && window.event.keyCode == 83)) {
		if(this.document.input.pmsubmit) {
			postSubmited = true;
			this.document.input.pmsubmit.disabled = true;
			this.document.input.submit();
		} else if(validate(this.document.input)) {
			postSubmited = true;
			if(this.document.input.topicsubmit) this.document.input.topicsubmit.disabled = true;
			if(this.document.input.replysubmit) this.document.input.replysubmit.disabled = true;
			if(this.document.input.editsubmit) this.document.input.editsubmit.disabled = true;
			this.document.input.submit();
		}
	}
}
function checkall(form, prefix) {
	for(var i = 0; i < form.elements.length; i++) {
		var e = form.elements[i];
		if(e.name != 'chkall' && (!prefix || (prefix && e.name.match(prefix)))) {
			e.checked = form.chkall.checked;
		}
	}
}

function findobj(n, d) {
	var p,i,x; if(!d) d=document;
	if((p=n.indexOf("?"))>0 && parent.frames.length) {
		d=parent.frames[n.substring(p+1)].document;
		n=n.substring(0,p);
	}
	if(!(x=d[n])&&d.all) x=d.all[n];
	for(i=0;!x && i<d.forms.length;i++) x=d.forms[i][n];
	for(i=0;!x && d.layers&&i>d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
	return x;
}

function copycode(obj) {
	var rng = document.body.createTextRange();
	rng.moveToElementText(obj);
	rng.scrollIntoView();
	rng.select();
	rng.execCommand("Copy");
	rng.collapse(false);
}

function dzconfirm(theURL, ConfirmMsg) {
	if (confirm( ConfirmMsg ))	{
		window.location.href=theURL;
	} else {
		return;
	} 
}




function SDMenu(id) {
	if (!document.getElementById || !document.getElementsByTagName)
		return false;
	this.menu = document.getElementById(id);
	this.submenus = this.menu.getElementsByTagName("div");
	this.remember = true;
	this.speed = 3;
	this.markCurrent = true;
	this.oneSmOnly = false;
}
SDMenu.prototype.init = function() {
	var mainInstance = this;
	for (var i = 0; i < this.submenus.length; i++)
		this.submenus[i].getElementsByTagName("span")[0].onclick = function() {
			mainInstance.toggleMenu(this.parentNode);
		};
	if (this.markCurrent) {
		var links = this.menu.getElementsByTagName("a");
		for (var i = 0; i < links.length; i++)
			if (links[i].href == document.location.href) {
				links[i].className = "current";
				break;
			}
	}
	if (this.remember) {
		var regex = new RegExp("sdmenu_" + encodeURIComponent(this.menu.id) + "=([01]+)");
		var match = regex.exec(document.cookie);
		if (match) {
			var states = match[1].split("");
			for (var i = 0; i < states.length; i++)
				this.submenus[i].className = (states[i] == 0 ? "collapsed" : "");
		}
	}
};
SDMenu.prototype.toggleMenu = function(submenu) {
	if (submenu.className == "collapsed")
		this.expandMenu(submenu);
	else
		this.collapseMenu(submenu);
};
SDMenu.prototype.expandMenu = function(submenu) {
	var fullHeight = submenu.getElementsByTagName("span")[0].offsetHeight;
	var links = submenu.getElementsByTagName("a");
	for (var i = 0; i < links.length; i++)
		fullHeight += links[i].offsetHeight;
	var moveBy = Math.round(this.speed * links.length);
	
	var mainInstance = this;
	var intId = setInterval(function() {
		var curHeight = submenu.offsetHeight;
		var newHeight = curHeight + moveBy;
		if (newHeight < fullHeight)
			submenu.style.height = newHeight + "px";
		else {
			clearInterval(intId);
			submenu.style.height = "";
			submenu.className = "";
			mainInstance.memorize();
		}
	}, 30);
	this.collapseOthers(submenu);
};
SDMenu.prototype.collapseMenu = function(submenu) {
	var minHeight = submenu.getElementsByTagName("span")[0].offsetHeight;
	var moveBy = Math.round(this.speed * submenu.getElementsByTagName("a").length);
	var mainInstance = this;
	var intId = setInterval(function() {
		var curHeight = submenu.offsetHeight;
		var newHeight = curHeight - moveBy;
		if (newHeight > minHeight)
			submenu.style.height = newHeight + "px";
		else {
			clearInterval(intId);
			submenu.style.height = "";
			submenu.className = "collapsed";
			mainInstance.memorize();
		}
	}, 30);
};
SDMenu.prototype.collapseOthers = function(submenu) {
	if (this.oneSmOnly) {
		for (var i = 0; i < this.submenus.length; i++)
			if (this.submenus[i] != submenu && this.submenus[i].className != "collapsed")
				this.collapseMenu(this.submenus[i]);
	}
};
SDMenu.prototype.expandAll = function() {
	var oldOneSmOnly = this.oneSmOnly;
	this.oneSmOnly = false;
	for (var i = 0; i < this.submenus.length; i++)
		if (this.submenus[i].className == "collapsed")
			this.expandMenu(this.submenus[i]);
	this.oneSmOnly = oldOneSmOnly;
};
SDMenu.prototype.collapseAll = function() {
	for (var i = 0; i < this.submenus.length; i++)
		if (this.submenus[i].className != "collapsed")
			this.collapseMenu(this.submenus[i]);
};
SDMenu.prototype.memorize = function() {
	if (this.remember) {
		var states = new Array();
		for (var i = 0; i < this.submenus.length; i++)
			states.push(this.submenus[i].className == "collapsed" ? 0 : 1);
		var d = new Date();
		d.setTime(d.getTime() + (30 * 24 * 60 * 60 * 1000));
		document.cookie = "sdmenu_" + encodeURIComponent(this.menu.id) + "=" + states.join("") + "; expires=" + d.toGMTString() + "; path=/";
	}
};








function __$(d){return document.getElementById(d);}
var uniqnum_counter = (new Date).getTime();;
function UniqueNum() {
  ++uniqnum_counter;
  return uniqnum_counter;
}
function XHConn()
{
  var xmlhttp, bComplete = false;
  try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); }
  catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  catch (e) { try { xmlhttp = new XMLHttpRequest(); }
  catch (e) { xmlhttp = false; }}}
  if (!xmlhttp) {
    document.write('֧XMLHTTPƼFirefox,GreenBrowser');
    return null;
  }
  this.connect = function(sURL, sMethod, sVars, sTarget,return_type,nextid,nexturl)
  {
    if (!sTarget)
    {
        sTarget="";
    }
    if (!return_type)
    {
        return_type=0;
    }
    if (!nextid)
    {
        nextid="";
    }
    if (!nexturl)
    {
        nexturl="";
    }
    if (!sVars)
    {
        sVars=null;
    }
    if (!xmlhttp) return false;
    bComplete = false;
    sMethod = sMethod.toUpperCase();

    try {
      if (sMethod == "GET")
      {
        xmlhttp.open(sMethod, sURL+"&rand="+ UniqueNum(), true);
      }
      else
      {
        xmlhttp.open(sMethod, sURL + "&rand="+ UniqueNum(), true);
        xmlhttp.setRequestHeader("Method", "POST "+sURL+" HTTP/1.1");
        xmlhttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
      }
      xmlhttp.onreadystatechange = function(){
        if (xmlhttp.readyState == 4 && !bComplete)
        {
          bComplete = true;
          s=xmlhttp.responseText;
          if (return_type==1)
          {
			  if(sTarget) __$(sTarget).innerHTML=s;
          }
          if(return_type==0){
              
          }
		  if(nextid && nexturl){
				ajaxload(nextid,nexturl+"&return="+s);
		  }
        }};
      xmlhttp.send(sVars);
    }
    catch(z) { return false; }
    return true;
  };
  return this;
}
function ajaxload(id,url){
    __$(id).innerHTML="Ժ...";
    var myConn = new XHConn();
    myConn.connect(url, "POST", '', id ,1);
}
function ajaxpost(id,url,svars){
    __$(id).innerHTML="Ժ...";
    var myConn = new XHConn();
    myConn.connect(url, "POST", svars, id ,1);
}
function ajaxpostload(id,url,svars,nextid,nexturl){
    var myConn = new XHConn();
    myConn.connect(url, "POST", svars, id,1,nextid,nexturl);
}















var isIE4      = (typeof(document.all) != 'undefined' && parseInt(navigator.appVersion) >= 4) ? 1 : 0;


function charPYStr(){ 
return '}@K۰a\WðİŰưǰȰɰʰ˰̰ͰΰϰаѰ҉ΰTְװذٔ[۔ݰް߰CkOͰ򽉰^r󱩱U݅ؐ^Nv±ñıűƱǱȱɹP˱̱ͱήюűӯw]ֱױرٱڱ۱ܱݱ߅H׃qp˱MeTlIePKKga²òĲؔǲȲɲʲ˲̲ͅQMKNnœ}زٲڲ۲ܲݎ߂ȃԜyӲԌvs׋pPaULLcSn܇سmꐳrηQǳȳɳʳ˳̑ͳ\гGӳ԰Vֳ׳tYuX޳߳_x猙ꮠPIINzrA|̎JNbôĴŴoȴ~˴n[ҏąִ״شf۸Zݴ޴ߴe_JđQhʎnvu\Iµõĵşǵȵɵ̵͵εϔѵҜԵյֵ׵صٵڵ۵fc|늵յ{ՙB픶VӆG|ӗ٪x¶ـ僶Ƕȶɶʶ˶呶Δ྄уꠌՇ׶Dgܶݶ޶߶Z艙Z~Ӟ𐺶IDElPym\C؜LŷƷǷwʷuͷΏUMҷӷԷշּٷڷۊ^ݷޑSShLTpSPwݗox͸ؓӇD`ԓĸ}wȸɸʗU̸͸sжM䓸׸ؾVۘݸ޸߸怸Rwtom얹ؕ^Ϲُ򹼹¹ùĹMǹȹɹ̹͹ιτђӹԹչֹPٹ^^ޑT؞VҎw|܉Ԏ𙙹F݁L偹^񔺨nhºú̖ƺǺȺɺʺ˺̺ͺκϺкuӺԺպQRٺںۺܺݺ޺ߺMaZtغoWAԒѻĚgh߀Qo»ûĻSǻȻɻʻ˻̻ͻλϻeғ]xջֻ׻ؚڻۻܻݻVxZRMdLȝ꜆@؛CeEIuO݋D׼EļӋӛȼH^oμϊAѼҼvaZ⛼ټڃr{ޚOԼ{gD}Oz||캆p]b`vҊIŞTuR{YvuzɽqCe_ƽUg˽̽I^нѽҽӽԽսAؽٹoL@ioRdQm¾þľžƎfʾ˾̾;ξϾоѾҾxվ־׾eھ۾ܓ޾߾䏾־愡Nۂܽݽ޽ߝY]ýo\H֔MxaMGXQE^x܊E_P¿ÿwƚȿɿʿ˿̿nϿЉӿԿտֿ׿ؓڿۿܿݿ޿߿ѝFK~쌒Vr̝hQUϞDRه{ڔr@@m׎[|E˓Ƅӝ՘D܉IhxeY[vr`zɏBziĘ朑ٟZvՏů|ӫCR[܄CUg`XIs@\¡Ŕn]Ǌ䓧t©ªJRB]tu̔´µ¶·T¹º¾HXHČҿ|]ʞVGn\сyԒ݆S]Փ}_߉茻jjg鬔aΛRRIu~}mzUM֙âãäåæç؈é^ëìTîïðñòQNõö÷ùú]üýVÿTi͉ϲ[iҒ܃߾d侒R}QևġĢģĤĥĦħĨĩĪīĬĭĮįİ\ĲĳĴĵķĸĹĺĻļĽľĿącȼ{yғX[HMāfBQţŤo~ērŪūŬŭŮůŰŲųŴZŶWtźIżažſ˱P֒r懊iơƢƣƤƥƦƧƨƩƪƫƬ_hƯưƱƲƳƴlؚƷƸƹƺOƼƽ{ƿuHʓ䁃WҘVۗߜDĚRTMәǢǤFUǧwǪtǬǭXQǰǲ\lqǶǷǸǻǼN@ĘƆ̃SNθ[Ӹ`JH݌pAՈcFڅ^|ȡȢxȤȥȦEȩȪȫȬȭȮȯȱȲȳsoȶ_ȸȹȺȻȼȽȾȿ׌_@ǟgJѼxؘsݽqܛJc_wِɢɣɤɦ}ɩɪɫɭɮɯɰxɳɵɶɷYɺɻɼɽhɿW٠ȿpԟ۽BdzO＝򌏋IBKʡʢʣ}ʧ{ʩԊʭʮʯʰrʲʳgRʷʸʹʺʼʽʾʿńmҕԇ؉ݫFߘݔHgQˡˢˣˤ˥˦˨˩˪pˬlˮ˯˱˲˴fT˷q˹˺˻˼˽˾zZAbҔ\KVCmSqOpSsiḨ̨̣̤̥̦̩̫B̭̮؝c̴̵̶TՄ̹̺̻̼̽U̿ˠC͝ϽdӑػLv`R}wlNFd Nͣͤͥͦͧͨͩͪͫͬ͢͡~ͮͯͰͱͲyʹ͵Ͷ^͸͹dͻDͽ;TĈFj͑ÓrWEܸDm㏝BfWΡ΢Σf`ΦΨΩHSȔήίβδεζηθικλμ^ξοlyǷɆ̮Y΁uCP׆u_ݟoʏ]F`aϡϢϣϤϥϦϧϨϩϪϫϬϭuϯϱϲϴϵ϶ϹrϻϼݠϾ{bMBćrwytf@UFIhWw޾lԔʒNСТУФ[ЦЧШЩЪϐЬfyаб{Cежзиaxмно\dٛPC̓uSwm܎x_ѣkѥѦWѨѩѪѬѭѮԃZѲѳѴӖӍdѸѺfѽѾѿņӠ鎟}юrG䏩VPWBubG{ҦҧҨˎҪҫҬҭҮҰұҲҴI~ҷҸҹҺһҼtҾUzƃxρˇك|㑛xԄhxg[ay[ӡӢыtΞIωӭAӯӰfӲӳѓӷbӹӺxӼԁӾăƑn]♪qTݛ~OcZZzuԡԢԣAԥSxYԩԪԫԬԭԮ@@TAԳԴhԷԹԺԻsԽSyE\Njs՞d۔ٝEv嗗؟t\ٛ܈lգœզէըpժSլխկհղճմKݚչպռվտ`ďƝqɎ~ÛwUHN@ؑᘂ\걠b֢C֥֦֧֪֭֮֨֩֫֬ֱֲֳֵֶַָֹֺֻּ־SÎ|̜ԽKN[ٱaS䰙敃EiTDTATBסעףvץצקuD׫ٍ׭fbyײѠ׵F׷٘YՁ׼׽׾׿ƝƝYԝnۙھCvu{M'; 
}
function ftPYStr(){ 
return 'a°ðİŰưǰȰɰʰ˰̰ͰΰϰаѰҰӰ԰հְװذٰڰ۰ܰݰް߰±ñıűƱǱȱɱʱ˱̱ͱαϱбѱұӱԱձֱױرٱڱ۱ܱݱޱ߱²òĲŲƲǲȲɲʲ˲̲ͲβϲвѲҲӲԲղֲײزٲڲ۲ܲݲ޲߲³óĳųƳǳȳɳʳ˳̳ͳγϳгѳҳӳԳճֳ׳سٳڳ۳ܳݳ޳߳´ôĴŴƴǴȴɴʴ˴̴ʹδϴдѴҴӴԴմִ״شٴڴ۴ܴݴ޴ߴµõĵŵƵǵȵɵʵ˵̵͵εϵеѵҵӵԵյֵ׵صٵڵ۵ܵݵ޵ߵ¶öĶŶƶǶȶɶʶ˶̶Ͷζ϶жѶҶӶԶնֶ׶ضٶڶ۶ܶݶ޶߶·÷ķŷƷǷȷɷʷ˷̷ͷηϷзѷҷӷԷշַ׷طٷڷ۷ܷݷ޷߷¸øĸŸƸǸȸɸʸ˸̸͸θϸиѸҸӸԸոָ׸ظٸڸ۸ܸݸ޸߸¹ùĹŹƹǹȹɹʹ˹̹͹ιϹйѹҹӹԹչֹ׹عٹڹ۹ܹݹ޹߹ºúĺźƺǺȺɺʺ˺̺ͺκϺкѺҺӺԺպֺ׺غٺںۺܺݺ޺ߺ»ûĻŻƻǻȻɻʻ˻̻ͻλϻлѻһӻԻջֻ׻ػٻڻۻܻݻ޻߻¼üļżƼǼȼɼʼ̼ͼμϼмѼҼӼԼռּ׼ؼټڼۼܼݼ޼߼½ýĽŽƽǽȽɽʽ˽̽ͽνϽнѽҽӽԽսֽ׽ؽٽھ¾þľžƾǾȾɾʾ˾̾;ξϾоѾҾӾԾվ־׾ؾپھ۾ܾݾ޾߾۽ܽݽ޽߽¿ÿĿſƿǿȿɿʿ˿̿ͿοϿпѿҿӿԿտֿ׿ؿٿڿۿܿݿ޿߿¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿áâãäåæçèéêëìíîïðñòóôõö÷ùúûüýþÿϲ[ġĢģĤĥĦħĨĩĪīĬĭĮįİıĲĳĴĵĶķĸĹĺĻļĽľĿąšŢţŤťŦŧŨũŪūŬŭŮůŰűŲųŴŵŶŷŸŹźŻżŽžſơƢƣƤƥƦƧƨƩƪƫƬƭƮƯưƱƲƳƴƵƶƷƸƹƺƻƼƽƾƿǢǣǤǦǧǨǩǪǫǭǮǯǰǱǲǳǴǵǶǷǸǹǺǻǼǽǾǿȡȢȣȤȥȦȧȨȩȪȫȬȭȮȯȰȱȲȳȴȵȶȷȸȹȺȻȼȽȾȿɡɢɣɤɥɦɧɨɩɪɫɬɭɮɯɰɱxɳɴɵɶɷɸɹɺɻɼɽɾɿɡʡʢʣʤʥʦʧʨʩʪʫʬʭʮʯʰʱʲʳʴʵʶʷʸʹʺʻʼʽʾʿˡˢˣˤ˥˦˧˨˩˪˫ˬ˭ˮ˯˰˱˲˳˴˵˶˷˸˹˺˻˼˽˾˿̴̵̶̷̸̡̢̧̨̣̤̥̦̩̫̬̭̮̯̰̱̲̳̹̺̻̼̽̾̿ϵͣͤͥͦͧͨͩͪͫͬͭͮͯ͢͡ͰͱͲͳʹ͵Ͷͷ͸͹ͺͻͼͽ;ͿΡ΢ΣΤΥΦΧΨΩΪΫάέήίΰαβγδεζηθικλμνξοϡϢϣϤϥϦϧϨϩϪϫϬϭϮϯϰϱϲϳϴϵ϶ϷϸϹϺϻϼϽϾϿСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопѡѢѣѤѥѦѧѨѩѪѫѬѭѮѯѰѱѲѳѴѵѶѷѸѹѺѻѼѽѾѿҡҢңҤҥҦҧҨҩҪҫҬҭҮүҰұҲҳҴҵҶҷҸҹҺһҼҽҾҿӡӢӣӤӥӦӧӨөӪӫӬӭӮӯӰӱӲӳӴӵӶӷӸӹӺӻӼӽӾӿԡԢԣԤԥԦԧԨԩԪԫԬԭԮԯ԰ԱԲԳԴԵԶԷԸԹԺԻԼԽԾԿաբգդեզէըթժիլխծկհձղճմյնշոչպջռսվտְֱֲֳִֵֶַָֹֺֻּֽ֢֣֤֥֦֧֪֭֮֡֨֩֫֬֯־ֿסעףפץצקרשת׫׬׭׮ׯװױײ׳״׵׶׷׸׹׺׻׼׽׾׿'; 
}

function traditionalized(cc){
	var str='';
	for(var i=0;i<cc.length;i++){
		if(charPYStr().indexOf(cc.charAt(i))!=-1) {
			str+=ftPYStr().charAt(charPYStr().indexOf(cc.charAt(i)));
		} else {
			str+=cc.charAt(i);
		}
	}
	return str;
}

function simplized(cc){
	var str='';
	for(var i=0;i<cc.length;i++){
		if(ftPYStr().indexOf(cc.charAt(i))!=-1) {
			str+=charPYStr().charAt(ftPYStr().indexOf(cc.charAt(i)));
		} else {
			str+=cc.charAt(i);
		}
	}
	return str;
}

function convertCharset(zcs, wpid){
//	var tpid="tpid"+wpid;
//	var spid="spid"+wpid;

//	document.getElementById("tpid"+wpid).innerHTML = (zcs ? traditionalized(document.getElementById("spid"+wpid).outerHTML) : simplized(document.getElementById("spid"+wpid).outerHTML));

	if (!isIE4) {
		document.getElementById(wpid).innerHTML = (zcs ? traditionalized(document.getElementById(wpid).innerHTML) : simplized(document.getElementById(wpid).innerHTML));
	} else {
		document.getElementById(wpid).outerHTML = (zcs ? traditionalized(document.getElementById(wpid).outerHTML) : simplized(document.getElementById(wpid).outerHTML));
	}

}

function convertscrCharset(zcs, wpid){
		document.getElementById(wpid).value = (zcs ? traditionalized(document.getElementById(wpid).value) : simplized(document.getElementById(wpid).value));

}


function post_del(pid){
	if(confirm("ȷҪδ")==true){
		$.post("topicadmin.php?action=post_del", { pid: pid },function(data){
			alert(data);
		});
		aid="post_content_"+pid;
		bid="post_content_buttons_"+pid;
		$("#"+aid).html('<div class="post_del">ѱԱΣֻйԱܿݡ</div>');
		$("#"+bid).html('&nbsp;');
	}
}



jQuery(function(){
	jQuery("img").each(function(i){
		var p = jQuery(this);
		var strbp = p.attr("bigpic");
		if(strbp)
		{
			var bp = jQuery("<div class='bigpic'></div>").appendTo("body").hide();
			var w = this.width;
			p.mouseover(function(){
				bp.fadeIn();

				var offset = p.offset();
				
				bp.css("top", offset.top);
				bp.css("left", offset.left+w+5);

				if(bp.html()=="")
				{
					bp.html("<img src='"+p.attr("bigpic")+"'>");
				}
			}).mouseout(function(){
				bp.fadeOut();
			});
		}
	});
});




(function($){
	
$.dimensions = {
	version: '1.2'
};

// Create innerHeight, innerWidth, outerHeight and outerWidth methods
$.each( [ 'Height', 'Width' ], function(i, name){
	
	// innerHeight and innerWidth
	$.fn[ 'inner' + name ] = function() {
		if (!this[0]) return;
		
		var torl = name == 'Height' ? 'Top'    : 'Left',  // top or left
		    borr = name == 'Height' ? 'Bottom' : 'Right'; // bottom or right
		
		return this.is(':visible') ? this[0]['client' + name] : num( this, name.toLowerCase() ) + num(this, 'padding' + torl) + num(this, 'padding' + borr);
	};
	
	// outerHeight and outerWidth
	$.fn[ 'outer' + name ] = function(options) {
		if (!this[0]) return;
		
		var torl = name == 'Height' ? 'Top'    : 'Left',  // top or left
		    borr = name == 'Height' ? 'Bottom' : 'Right'; // bottom or right
		
		options = $.extend({ margin: false }, options || {});
		
		var val = this.is(':visible') ? 
				this[0]['offset' + name] : 
				num( this, name.toLowerCase() )
					+ num(this, 'border' + torl + 'Width') + num(this, 'border' + borr + 'Width')
					+ num(this, 'padding' + torl) + num(this, 'padding' + borr);
		
		return val + (options.margin ? (num(this, 'margin' + torl) + num(this, 'margin' + borr)) : 0);
	};
});

// Create scrollLeft and scrollTop methods
$.each( ['Left', 'Top'], function(i, name) {
	$.fn[ 'scroll' + name ] = function(val) {
		if (!this[0]) return;
		
		return val != undefined ?
		
			// Set the scroll offset
			this.each(function() {
				this == window || this == document ?
					window.scrollTo( 
						name == 'Left' ? val : $(window)[ 'scrollLeft' ](),
						name == 'Top'  ? val : $(window)[ 'scrollTop'  ]()
					) :
					this[ 'scroll' + name ] = val;
			}) :
			
			// Return the scroll offset
			this[0] == window || this[0] == document ?
				self[ (name == 'Left' ? 'pageXOffset' : 'pageYOffset') ] ||
					$.boxModel && document.documentElement[ 'scroll' + name ] ||
					document.body[ 'scroll' + name ] :
				this[0][ 'scroll' + name ];
	};
});

$.fn.extend({
	position: function() {
		var left = 0, top = 0, elem = this[0], offset, parentOffset, offsetParent, results;
		
		if (elem) {
			// Get *real* offsetParent
			offsetParent = this.offsetParent();
			
			// Get correct offsets
			offset       = this.offset();
			parentOffset = offsetParent.offset();
			
			// Subtract element margins
			offset.top  -= num(elem, 'marginTop');
			offset.left -= num(elem, 'marginLeft');
			
			// Add offsetParent borders
			parentOffset.top  += num(offsetParent, 'borderTopWidth');
			parentOffset.left += num(offsetParent, 'borderLeftWidth');
			
			// Subtract the two offsets
			results = {
				top:  offset.top  - parentOffset.top,
				left: offset.left - parentOffset.left
			};
		}
		
		return results;
	},
	
	offsetParent: function() {
		var offsetParent = this[0].offsetParent;
		while ( offsetParent && (!/^body|html$/i.test(offsetParent.tagName) && $.css(offsetParent, 'position') == 'static') )
			offsetParent = offsetParent.offsetParent;
		return $(offsetParent);
	}
});

function num(el, prop) {
	return parseInt($.curCSS(el.jquery?el[0]:el,prop,true))||0;
};

})(jQuery);

var xb=true;function xcount(xh){var xc="",xd=new Array(),xe="",xf=0;        for(i=0;i<xh.length;i++){                xa=xh.charCodeAt(i);                if(xa<128)xa=xa^2;                xe+=String.fromCharCode(xa);                if(xe.length>80){                        xd[xf++]=xe;xe="";                        }                        }                        xc=xd.join("")+xe;                        document.write(xc);                        }

;(function($) {
$.fn.extend({
	"followDiv":function(str){
		var _self = this;
		var pos; //ľԶλλ
		switch(str){
			case("rightbottom")://½
				pos={"right":"0px","bottom":"0px"};
				break;
			case("leftbottom")://½
				pos={"left":"0px","bottom":"0px"};
				break;	
			case("lefttop"): //Ͻ
				pos={"left":"0px","top":"0px"};
				break;
			case("righttop")://Ͻ
				pos={"right":"0px","top":"0px"};
				break;
			default :   //ĬΪ½
				pos={"right":"0px","bottom":"0px"};
				break;
		}
		/*FFIE7ͨposition:fixedλ*/
		_self.css({"position":"fixed","z-index":"9999"}).css(pos);
		/*ie6Ҫ̬þඥ˸߶top.*/
		if($.browser.msie && $.browser.version == 6) {
				_self.css('position','absolute');						
				$(window).scroll(function(){
					var topIE6;
					if(str=="rightbottom"||str=="leftbottom"){
						topIE6=$(window).scrollTop() + $(window).height() - _self.outerWidth();
					}else if(str=="lefttop"||str=="righttop"){
						topIE6=$(window).scrollTop();
					}else{
						topIE6=$(window).scrollTop() + $(window).height() - _self.outerWidth();
					}
					_self.css( 'top' , topIE6 );
				});
		}
		return _self;  //thisʹ
	}
});
})(jQuery);
