www.gusucode.com > SiteEngine(建站引擎) 7.0 个人免费版源码程序 > bicq/system/js/desktop.js
var IconzIndex=0; var IconOffsetX=30; var IconOffsetY=30; var DesktopOffSetY=0; var DesktopOffSetX=0; var DesktopGlobalObjID=""; var DesktopIsCatchIcon=false; var DesktopIconSelectName=""; var DesktopIsSelect=false; /*取消选中的图标*/ function DesktopCancelSelect() { if (!DesktopIsSelect) SelectDesktopIcon(); DesktopIsSelect=false; }; /*选中图标*/ function SelectDesktopIcon(ObjID) { if (DesktopIconSelectName!="") { $("DesktopIconTitle_"+DesktopIconSelectName).className="DesktopTitle"; $("DesktopIcon_"+DesktopIconSelectName).className="DesktopIcons"; } if (ObjID=="" || ObjID==null) return; $("DesktopIconTitle_"+ObjID).className="SelectDesktopIcon"; $("DesktopIcon_"+ObjID).className="SelectIcons"; DesktopIconSelectName=ObjID; DesktopIsSelect=true; }; /*设置焦点函数*/ function DesktopSetFocus(ObjID) { DesktopGlobalObjID=ObjID; $("DesktopIconBody_"+ObjID).style.zIndex=++IconzIndex; SelectDesktopIcon(ObjID); }; /*判断图标是否超出规定范围*/ function CheckIconsIsOut(ObjID) { var Obj_Blank_Left=CurrentBodyWidth-60; var Obj_Blank_Top=CurrentBodyHeight-40-60; if ($("DesktopIconBody_"+ObjID).offsetTop<=0) { $("DesktopIconBody_"+ObjID).style.top = "0px"; } if ($("DesktopIconBody_"+ObjID).offsetTop>=Obj_Blank_Top) { $("DesktopIconBody_"+ObjID).style.top = Obj_Blank_Top+"px"; } if ($("DesktopIconBody_"+ObjID).offsetLeft<=0) { $("DesktopIconBody_"+ObjID).style.left = "0px"; } if ($("DesktopIconBody_"+ObjID).offsetLeft>=Obj_Blank_Left) { $("DesktopIconBody_"+ObjID).style.left = Obj_Blank_Left+"px"; } }; /*锁定图标函数*/ function DesktopCatchIcon(evt) { var ObjID=DesktopGlobalObjID; if (ObjID=="") return; DesktopIsCatchIcon = true; DesktopOffSetX=parseInt($("DesktopIconBody_"+ObjID).style.left)-(Microsoft_IE ? event.clientX+document.documentElement.scrollLeft : evt.pageX); DesktopOffSetY=parseInt($("DesktopIconBody_"+ObjID).style.top)-(Microsoft_IE ? event.clientY+document.documentElement.scrollTop : evt.pageY); }; /*释放图标函数*/ function DesktopReleaseIcon() { DesktopGlobalObjID=""; DesktopIsCatchIcon = false; }; /*移动图标函数*/ function DesktopMoveIcon(evt) { var ObjID=DesktopGlobalObjID; if (ObjID=="") return; if (DesktopIsCatchIcon) { var x= Microsoft_IE ? event.clientX+document.documentElement.scrollLeft:evt.pageX; var y= Microsoft_IE ? event.clientY+document.documentElement.scrollTop:evt.pageY; $("DesktopIconBody_"+ObjID).style.left=x+DesktopOffSetX+'px'; $("DesktopIconBody_"+ObjID).style.top=y+DesktopOffSetY+'px'; CheckIconsIsOut(ObjID); } }; /* 创建图标函数 //////////////////////////////////////////////////////// //ObjID ID(字符串) //Ico 图标(50*50) //Title 标题 //IconType 图标创建方式(0首次创建,1后来创建) //ObjAction 图标双击时的动作 //////////////////////////////////////////////////////// */ function CreateIcons(ObjID,Ico,Title,IconType,ObjAction) { /*如果存在这个图标则返回*/ if ($("MainDesktopIcon_"+ObjID)!=null) return; var Width=60; var Height=60; var BICQIconsHtml="" /*图标拖动层*/ +"<div id=\"MainDesktopIcon_"+ObjID+"\">" +"<div id=\"DesktopIconBody_"+ObjID+"\" style=\"position:absolute;left:"+IconOffsetX+"px;top:"+IconOffsetY+"px;width:"+Width+"px;height:"+Height+"px;z-index:"+IconzIndex+";\" title=\""+Title+"\" onMouseDown=\"DesktopSetFocus('"+ObjID+"');\" onDBlclick=\""+ObjAction+"\">" /*小图标*/ +"<div id=\"DesktopIcon_"+ObjID+"\" style=\"width:50px;height:50px;background-image: url(images/icons/icon"+Ico+".gif);\"></div>" /*图标名*/ +"<div id=\"DesktopIconTitle_"+ObjID+"\" style=\"padding-top:3px;\" class=\"DesktopTitle\" align=\"center\">"+Title+"</div>" +"</div>" +"</div>"; IconzIndex++; IconOffsetY+=75; if (IconOffsetY>450) { IconOffsetY=30; IconOffsetX+=75; } if (IconType==1) { document.body.insertAdjacentHTML("beforeEnd",BICQIconsHtml); } else { document.write(BICQIconsHtml); } }; /* 更新图标函数 //////////////////////////////////////////////////////// //ObjID ID(字符串) //Ico 图标(50*50) //Title 标题 //ObjAction 图标双击时的动作 //////////////////////////////////////////////////////// */ function UpdateIcons(ObjID,Ico,Title,ObjAction) { var Width=60; var Height=60; var IconOffsetX=$("DesktopIconBody_"+ObjID).style.pixelLeft; var IconOffsetY=$("DesktopIconBody_"+ObjID).style.pixelTop; var IconzIndex=$("DesktopIconBody_"+ObjID).style.zIndex; var BICQIconsHtml="" +"<div id=\"DesktopIconBody_"+ObjID+"\" style=\"position:absolute;left:"+IconOffsetX+"px;top:"+IconOffsetY+"px;width:"+Width+"px;height:"+Height+"px;z-index:"+IconzIndex+";\" title=\""+Title+"\" onMouseDown=\"DesktopSetFocus('"+ObjID+"');\" onDBlclick=\""+ObjAction+"\">" /*小图标*/ +"<div id=\"DesktopIcon_"+ObjID+"\" style=\"width:50px;height:50px;background-image: url(images/icons/icon"+Ico+".gif);\"></div>" /*图标名*/ +"<div id=\"DesktopIconTitle_"+ObjID+"\" style=\"padding-top:3px;\" class=\"DesktopTitle\" align=\"center\">"+Title+"</div>" +"</div>"; $("MainDesktopIcon_"+ObjID).innerHTML=BICQIconsHtml; }; /* 增加桌面图标 */ function AddUserDesktopIcons(IconID,IconFlag,IconTitle,IconIndex,IconLink,IconWidth,IconHeight,IconType) { if (IconFlag=="1") { var iActions="CreateWindows('UserDesktopIconsWindow_"+IconID+"',0,0,"+IconWidth+","+IconHeight+",'images/skins/bicq/title.gif','"+IconTitle+"',1,1,1,1,'<iframe width=100% height=100% src="+IconLink+" marginwidth=0 marginheight=0 scrolling=auto hspace=0 vspace=0 frameborder=0></iframe>',null,0);ShowWindow('UserDesktopIconsWindow_"+IconID+"');"; } else { var iActions="window.open('"+IconLink+"');"; } CreateIcons("UserDesktopIcons_"+IconID,IconIndex,IconTitle,IconType,iActions); }; /* 更新桌面图标 */ function UpdUserDesktopIcons(IconID,IconFlag,IconTitle,IconIndex,IconLink,IconWidth,IconHeight) { if (IconFlag=="1") { var iActions="CreateWindows('UserDesktopIconsWindow_"+IconID+"',0,0,"+IconWidth+","+IconHeight+",'images/skins/bicq/title.gif','"+IconTitle+"',1,1,1,1,'<iframe width=100% height=100% src="+IconLink+" marginwidth=0 marginheight=0 scrolling=auto hspace=0 vspace=0 frameborder=0></iframe>',null,0);ShowWindow('UserDesktopIconsWindow_"+IconID+"');"; } else { var iActions="window.open('"+IconLink+"');"; } UpdateIcons("UserDesktopIcons_"+IconID,IconIndex,IconTitle,iActions); };