//Pop-it menu- By Dynamic Drive - Modified by Wbird - for Discuz! by DyNE
//For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
//This credit MUST stay intact for use
//
//DyNE (http://www.zzxy.cn)注：
//使用 iframe 遮挡下拉列表框的方法来自无忧脚本的斑竹宝玉
//如果希望显示快些，可以注释掉阴影部分：ie_dropshadow(menuobj,"#999999",3)
//#999999是阴影颜色，3是层次

var menuOffX=0	//菜单距连接文字最左端距离
var menuOffY=3	//菜单距连接文字底端距离

var fo_shadows=new Array()
var linkset=new Array()

////No need to edit beyond here

var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1
var ns6=document.getElementById&&!document.all
var ns4=document.layers

function ShowMenu(e,vmenu,mod){
	if (!document.all&&!document.getElementById&&!document.layers)
		return
	which=vmenu
	clearhidemenu()
	ie_clearshadow()
	menuobj=ie4? document.all.popmenu : ns6? document.getElementById("popmenu") : ns4? document.popmenu : ""
	menuobj.thestyle=(ie4||ns6)? menuobj.style : menuobj
	
	if (ie4||ns6)
		menuobj.innerHTML=which
	else {
		menuobj.document.write('<layer name=gui bgColor=#E6E6E6 width=165 onmouseover="clearhidemenu()" onmouseout="hidemenu()">'+which+'</layer>')
		menuobj.document.close()
	}
	menuobj.contentwidth=(ie4||ns6)? menuobj.offsetWidth : menuobj.document.gui.document.width
	menuobj.contentheight=(ie4||ns6)? menuobj.offsetHeight : menuobj.document.gui.document.height
	
	eventX=ie4? event.clientX : ns6? e.clientX : e.x
	eventY=ie4? event.clientY : ns6? e.clientY : e.y
	
	var rightedge=ie4? document.body.clientWidth-eventX : window.innerWidth-eventX
	var bottomedge=ie4? document.body.clientHeight-eventY : window.innerHeight-eventY
		if (rightedge<menuobj.contentwidth)
			menuobj.thestyle.left=ie4? document.body.scrollLeft+eventX-menuobj.contentwidth+menuOffX : ns6? window.pageXOffset+eventX-menuobj.contentwidth : eventX-menuobj.contentwidth
		else
			menuobj.thestyle.left=ie4? ie_x(event.srcElement)+menuOffX : ns6? window.pageXOffset+eventX : eventX
//改为底端		
		if (bottomedge<menuobj.contentheight&&mod!=0)
			menuobj.thestyle.top=ie4? document.body.scrollTop+eventY-menuobj.contentheight-event.offsetY+menuOffY-23+event.srcElement.offsetHeight : ns6? window.pageYOffset+eventY-menuobj.contentheight-10 : eventY-menuobj.contentheight
		else
			menuobj.thestyle.top=ie4? ie_y(event.srcElement)+menuOffY+event.srcElement.offsetHeight : ns6? window.pageYOffset+eventY+10 : eventY
//End	
	menuobj.thestyle.visibility="visible"
//画阴影
	ie_dropshadow(menuobj,"#999999",3)
//遮挡该层后面的列表框
//	DivOver(menuobj)
	return false
}

function ie_y(e){  
	var t=e.offsetTop;  
	while(e=e.offsetParent){  
		t+=e.offsetTop;  
	}  
	return t;  
}  
function ie_x(e){  
	var l=e.offsetLeft;  
	while(e=e.offsetParent){  
		l+=e.offsetLeft;  
	}  
	return l;  
}  
function ie_dropshadow(el, color, size)
{
	var i;
	for (i=size; i>0; i--)
	{
		var rect = document.createElement('div');
		var rs = rect.style
		rs.position = 'absolute';
		rs.left = (el.style.posLeft + i) + 'px';
		rs.top = (el.style.posTop + i) + 'px';
		rs.width = el.offsetWidth + 'px';
		rs.height = el.offsetHeight + 'px';
		rs.zIndex = el.style.zIndex - i;
		rs.backgroundColor = color;
		var opacity = 1 - i / (i + 1);
		rs.filter = 'alpha(opacity=' + (100 * opacity) + ')';
		el.insertAdjacentElement('afterEnd', rect);
		fo_shadows[fo_shadows.length] = rect;
	}
}
function ie_clearshadow()
{
	for(var i=0;i<fo_shadows.length;i++)
	{
		if (fo_shadows[i])
			fo_shadows[i].style.display="none"
	}
	fo_shadows=new Array();
}


function contains_ns6(a, b) {
	while (b.parentNode)
		if ((b = b.parentNode) == a)
			return true;
	return false;
}

function hidemenu(){
	if (window.menuobj) {
		menuobj.thestyle.visibility=(ie4||ns6)? "hidden" : "hide"
//		document.getElementById("divframe").style.display = "none"
	}
	ie_clearshadow()
}

function dynamichide(e){
	if (ie4&&!menuobj.contains(e.toElement))
		hidemenu()
	else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
		hidemenu()
}

function delayhidemenu(){
	if (ie4||ns6||ns4)
		delayhide=setTimeout("hidemenu()",500)
}

function clearhidemenu(){
	if (window.delayhide)
		clearTimeout(delayhide)
}

function highlightmenu(e,state){
	if (document.all)
		source_el=event.srcElement
	else if (document.getElementById)
		source_el=e.target
	if (source_el.className=="menuitems"){
		source_el.id=(state=="on")? "mouseoverstyle" : ""
	}
	else {
		while(source_el.id!="popmenu"){
			source_el=document.getElementById? source_el.parentNode : source_el.parentElement
			if (source_el.className=="menuitems"){
				source_el.id=(state=="on")? "mouseoverstyle" : ""
			}
		}
	}
}

if (ie4||ns6)
document.onclick=hidemenu
function doSClick() {
	var targetId, srcElement, targetElement, imageId, imageElement;
	srcElement = window.event.srcElement;
	targetId = srcElement.id + "content";
	targetElement = document.all(targetId);
	imageId = srcElement.id;
	imageId = imageId.charAt(0);
	imageElement = document.all(imageId);
	if (targetElement.style.display == "none") {
		imageElement.src = "Skins/Default/minus.gif"
		targetElement.style.display = "";
	} else {
		imageElement.src = "Skins/Default/plus.gif"
		targetElement.style.display = "none";
	}
}
function doClick() {
	var targetId, srcElement, targetElement;
	srcElement = window.event.srcElement;
	targetId = srcElement.id + "_content";
	targetElement = document.all(targetId);
	if (targetElement.style.display == "none") {
		srcElement.src = "Skins/Default/minus.gif"
		targetElement.style.display = "";
	} else {
		srcElement.src = "Skins/Default/plus.gif"
		targetElement.style.display = "none";
	}
}


function imgload(e){
var oImg = document.images;
var oClientSreen=screen.width-333;
	for(var i=0;i<oImg.length;i++) {
		if(oImg[i].height>500 && oImg[i].width<oClientSreen)
		{
		//oImg[i].width=(oImg[i].width*oImg[i].height)%300;
		oImg[i].style.height=300;
		}
		if(oImg[i].width>oClientSreen){oImg[i].style.width=oClientSreen;}
	}
}
/*
///////////////////////////////////////////
//隐藏背后的下拉列表框
///////////////////////////////////////////
var ie55up = IsIE55Up();
var overIframe = null;

function DivOver(obj)
{
//	var obj = document.all[objID];
	// 只有IE5.5以上Iframe的z-index才有效
	if (ie55up)
	{
		if (overIframe == null)
		{
			overIframe = document.createElement("<iframe src='about:blank' style='position:absolute;left:0;top:0;z-index:99;display:none' scrolling='no' frameborder='0' id='divframe'></iframe>");
		}
		document.body.insertAdjacentElement("beforeEnd",overIframe);
		with(overIframe.style)
		{
			top = obj.style.top;
			left = obj.style.left;
			width = obj.offsetWidth;
			height = obj.offsetHeight;
			display = 'block';
		}
		obj.style.zIndex = "100";
	} else {
       //隐藏被ID对象（层）遮挡的所有select
		var sels = document.getElementsByTagName('select');
		for (var i = 0; i < sels.length; i++)
		if (Obj1OverObj2(obj, sels[i]))
		sels[i].style.visibility = 'hidden';
	}
}

//判断obj1是否遮挡了obj2
function Obj1OverObj2(obj1, obj2)
{
	var pos1 = getPosition(obj1)
	var pos2 = getPosition(obj2)
	var result = true;
	var obj1Left = pos1.left - window.document.body.scrollLeft;
	var obj1Top = pos1.top - window.document.body.scrollTop;
	var obj1Right = obj1Left + obj1.offsetWidth;
	var obj1Bottom = obj1Top + obj1.offsetHeight;
	var obj2Left = pos2.left - window.document.body.scrollLeft;
	var obj2Top = pos2.top - window.document.body.scrollTop;
	var obj2Right = obj2Left + obj2.offsetWidth;
	var obj2Bottom = obj2Top + obj2.offsetHeight;

	if (obj1Right <= obj2Left || obj1Bottom <= obj2Top || obj1Left >= obj2Right || obj1Top >= obj2Bottom)
	result = false;
	return result;
}

//获取对象的坐标
function getPosition(Obj)
{
	for (var sumTop=0,sumLeft=0;Obj!=window.document.body;sumTop+=Obj.offsetTop,sumLeft+=Obj.offsetLeft, Obj=Obj.offsetParent);
	return {left:sumLeft,top:sumTop}
}

//是否IE5.5以上版本
function IsIE55Up () {
	var agt = navigator.userAgent.toLowerCase();
	var isIE = (agt.indexOf("msie")!=-1);
	if (isIE)
	{
		var stIEVer = agt.substring(agt.indexOf("msie ") + 5);
		var verIEFull = parseFloat(stIEVer);
		return verIEFull >= 5.5;
	}
	return false;
}
*/