var ServarPath = '/WebSite/';
/**********************************************************************/
//通用函数
/**********************************************************************/
function $(objectID){
return document.getElementById(objectID);
}
/**********************************************************************/
//客户端浏览器判断
/**********************************************************************/
isMac = navigator.appVersion.indexOf("Mac") !=-1 ? true : false;
isIE = navigator.appVersion.indexOf("MSIE") !=-1 ? true : false;
isNS6 = document.getElementById&&!document.all ? true : false;
isNS4 = (document.layers) ? true : false;
isOPERAMINI = (screen.height == 5000 && screen.availHeight == 5000 ) ? true : false;
isSafari = ((navigator.userAgent.indexOf("Safari")!=-1)&&(isMac)) ? true : false;
/**********************************************************************/
//模式对话框时创建背景
/**********************************************************************/
var DialogBackground = null;
function CreateBackGroundDiv(zindex){
hideAllSelect();
DialogBackground = document.createElement("<div id='DialogBackground' style='z-index:"+zindex+";width:100%;height:100%;top:0px;left:0px;position:absolute;background-color:Gray;opacity: 0.2;filter: Alpha(Opacity=20);'></div>");
document.body.appendChild(DialogBackground);
}
function RemoveBackGroundDiv(){
showAllSelect();
if(DialogBackground != null) {
document.body.removeChild(DialogBackground);
DialogBackground = null;
}
}
function hideAllSelect(){
var obj = document.getElementsByTagName("SELECT");
for(var i=0;i<obj.length;i++)
obj[i].style.visibility = "hidden";
}
function showAllSelect(){
var obj=document.getElementsByTagName("SELECT");
for(var i=0;i<obj.length;i++)
obj[i].style.visibility = "visible";
}
/**********************************************************************/
//自己定义alert/confim
/**********************************************************************/
function ALERT(text,title,messageType)
{
if(!title) {title = "系统提示";}
InitDialogBox(text,title,"Client",messageType,false,false,false,false,false);
}
function CONFIRM(text,title,OKMethod,CancelMethod)
{
if(!title) {title = "系统提示";}
InitDialogBox(text,title,"Client","Confirm",OKMethod,CancelMethod,false,false,false);
}
function WEBALERT(text,title,DialogBoxID,isOkPostBack,messageType)
{
InitDialogBox(text,title,"Web",messageType,false,false,isOkPostBack,false,DialogBoxID);
}
function WEBCONFIRM(text,title,DialogBoxID,isOkPostBack,isCancelPostBack)
{
InitDialogBox(text,title,"Web","Confirm",false,false,isOkPostBack,isCancelPostBack,DialogBoxID);
}
var DialogBox = null;
function InitDialogBox(text,title,Invoke,messageType,OKMethod,CancelMethod,isOKPostBack,isCancelPostBack,DialogBoxID)
{
var imageUrl = GetDialogImageByType(messageType);
DialogBox = document.createElement("<div id='DialogBox' class='DialogBoxContainer' style='z-index: 20001; width: 360px; height: 120px; position: absolute;'></div>");
var dialogBoxHead = '';
var dialogBoxBody = '';
var dialogBoxFoot = '';
dialogBoxHead += "<div onMousedown='redayDrag(this);' οnmοusemοve='draging(this);' οnmοuseup='endDrag(this);'>";
dialogBoxHead += " <table class='DialogBoxHead' style='filter:alpha(opacity=80);'>";
dialogBoxHead += " <tr>";
dialogBoxHead += " <td align=left> [" + title + "]</td>";
dialogBoxHead += " <td align=right><span οnclick='closeDialogBox();' style='cursor:hand;font-family:webdings;'>r </span></td>";
dialogBoxHead += " </tr>";
dialogBoxHead += " </table>";
dialogBoxHead += "</div>";
dialogBoxBody += "<div>";
dialogBoxBody += " <table class='DialogBoxBody' style='filter:alpha(opacity=90);'>";
dialogBoxBody += " <tr>";
dialogBoxBody += " <td align='center' width='50px'><img src='" + imageUrl + "'></td>";
dialogBoxBody += " <td>" + text + "</td>";
dialogBoxBody += " </tr>";
dialogBoxBody += " </table>";
dialogBoxBody += "</div>";
dialogBoxFoot += "<div>";
dialogBoxFoot += " <table class='DialogBoxFoot' style='filter:alpha(opacity=90);'>";
dialogBoxFoot += " <tr>";
dialogBoxFoot += " <td>";
if(Invoke == "Web")
{
dialogBoxFoot += InitWebEventButton(messageType,isOKPostBack,isCancelPostBack,DialogBoxID);
}
else if(Invoke == "Client")
{
dialogBoxFoot += InitClientEventButton(messageType,OKMethod,CancelMethod);
}
dialogBoxFoot += " </td>";
dialogBoxFoot += " </tr>";
dialogBoxFoot += " </table>";
dialogBoxFoot += "</div>";
DialogBox.innerHTML = dialogBoxHead + dialogBoxBody + dialogBoxFoot;
var WinWidth = document.documentElement.clientWidth;
var WinHeight = document.documentElement.clientHeight;
if( WinWidth ==0 || WinHeight==0)
{
WinWidth = document.body.clientWidth;
WinHeight = document.body.clientHeight;
}
CreateBackGroundDiv(20000);
DialogBox.style.left = document.documentElement.scrollLeft + (WinWidth - parseInt(DialogBox.style.width) )/2;
DialogBox.style.top = document.documentElement.scrollTop + (WinHeight - parseInt(DialogBox.style.height))/2;
document.body.appendChild(DialogBox);
window.attachEvent('onresize',resetDialogBox);
window.attachEvent('onscroll',resetDialogBox);
}
function InitWebEventButton(messageType,isOKPostBack,isCancelPostBack,DialogBoxID)
{
var BtnHTML = "";
if(isOKPostBack) { BtnHTML += " <input type='button' value='OK' class='button' οnclick='" + DialogBoxID + "OKPostBack();'/>";}
else { BtnHTML += " <input type='button' value='OK' class='button' οnclick='closeDialogBox();'/>";}
if(messageType == "Confirm")
{
if(isCancelPostBack) { BtnHTML += " <input type='button' value='CANCEL' class='button' οnclick='" + DialogBoxID + "CancelPostBack();'/>";}
else { BtnHTML += " <input type='button' value='CANCEL' class='button' οnclick='closeDialogBox();'/>";}
}
return BtnHTML;
}
function InitClientEventButton(messageType,OKMethod,CancelMethod)
{
var BtnHTML = "";
if(messageType == "Confirm")
{;
if(OKMethod) { BtnHTML += " <input type='button' class='button' value='OK' οnclick='closeDialogBox();" + OKMethod + "();'/>";}
else { BtnHTML += " <input type='button' class='button' value='OK' οnclick='closeDialogBox();'/>";}
if(CancelMethod) { BtnHTML += " <input type='button' class='button' value='CANCEL' οnclick='closeDialogBox();" + CancelMethod + "();'/>";}
else { BtnHTML += " <input type='button' class='button' value='CANCEL' οnclick='closeDialogBox();'/>"; }
}
else
{
BtnHTML += " <input type='button' value='OK' class='button' οnclick='closeDialogBox();'/>";
}
return BtnHTML;
}
function GetDialogImageByType(messageType)
{
switch(messageType)
{
case "Information":
return ServarPath + "images/material/information.gif";
case "Warning":
return ServarPath + "images/material/warning.gif";
case "Error":
return ServarPath + "images/material/error.gif";
case "Confirm":
return ServarPath + "images/material/Confirm.gif";
default:
return ServarPath + "images/material/information.gif";
}
}
function closeDialogBox()
{
RemoveBackGroundDiv();
document.body.removeChild(DialogBox);
window.detachEvent("onresize",resetDialogBox);
window.detachEvent("onscroll",resetDialogBox);
DialogBox = null;
}
function resetDialogBox(){
var width = document.documentElement.scrollWidth;
var height = document.documentElement.scrollHeight;
if(document.documentElement.scrollWidth < document.documentElement.clientWidth){
width = document.documentElement.clientWidth;
}
if(document.documentElement.scrollHeight < document.documentElement.clientHeight){
height = document.documentElement.clientHeight;
}
if(DialogBackground != null){
DialogBackground.style.width = width;
DialogBackground.style.height = height;
}
if(DialogBox != null){
DialogBox.style.left = document.documentElement.scrollLeft + (document.documentElement.clientWidth - DialogBox.offsetWidth )/2;
DialogBox.style.top = document.documentElement.scrollTop + (document.documentElement.clientHeight - DialogBox.offsetHeight)/2;
}
}
/**********************************************************************/
//自字定义window.open
/**********************************************************************/
var WinIndex = 0;
var WinZindex=10001;//z-index;
function ResetDialogPage(ID,element){
var win = $(ID);
win.style.width = element.offsetWidth;
win.style.height = element.offsetHeight + 40;
}
function ResizeDialogPage(ID){
var win = $(ID + "_BodyDiv");
if(win.isContentEditable){ win.contentEditable = 'false';}
else{ win.contentEditable = 'true'; }
}
function closeDialogPage(ID){
var win = $(ID);
document.body.removeChild(win);
RemoveBackGroundDiv();
}
function getFocus(obj)
{
if(obj.style.zIndex!=WinZindex)
{
WinZindex = WinZindex + 1;
obj.style.zIndex=WinZindex;
}
}
function WINDOWOPEN(url,w,h,tit,e,resize,model)
{
if(!url){ return false; }
if(!w || !h){ w = 800;h=600; }
if (!isIE){ window.open(url,'','width=' + w +',' + h +',left=100,top=100'); return false;}
if(!tit){tit = "New Window";}
if(!resize) {resize = false;}
if(!model) {model = false;}
if (!e)
{
e = new Object();
e.clientX = document.documentElement.scrollLeft + parseInt((document.documentElement.clientWidth - w) / 2);
e.clientY = document.documentElement.scrollTop + parseInt((document.documentElement.clientHeight - h) / 2);
}
var ID = "Window" + WinIndex++;
var newWin = document.createElement("<div id='" + ID + "' class='DialogPageContainer' οnmοusedοwn='getFocus(this);' style='z-index: " + (WinZindex++) + ";position:absolute;'></div>");
var dialogPageHeadDiv = "";
var dialogPageBodyDiv = "";
var dialogPageFootDiv = "";
dialogPageHeadDiv += "<div id='" + ID + "_HeadDiv' οndblclick=/"closeDialogPage('" + ID + "');/" οnmοusedοwn='redayDrag(this);' οnmοusemοve='draging(this);' οnmοuseup='endDrag(this);' >";
dialogPageHeadDiv += " <table border='0' cellpadding='0' cellspacing='0' class='DialogPageHead' style=';filter:alpha(opacity=90);'>";
dialogPageHeadDiv += " <tr>";
dialogPageHeadDiv += " <td align=left> [" + tit + "]</td>";
dialogPageHeadDiv += " <td align=right>";
if(resize)
{
dialogPageHeadDiv += " <span οnclick=/"ResizeDialogPage('" + ID + "');/" style='cursor:hand;font-family:webdings;'>2</span>";
}
dialogPageHeadDiv += " <span οnclick=/"closeDialogPage('" + ID + "');/" style='cursor:hand;font-family:webdings;'>r </span></td>";
dialogPageHeadDiv += " </tr>";
dialogPageHeadDiv += " </table>";
dialogPageHeadDiv += "</div>";
dialogPageBodyDiv += "<div id='" + ID + "_BodyDiv' style='filter:alpha(opacity=90);' class='DialogPageBody' contenteditable='false' οnkeypress='javascript:event.keyCode = 0;' οnpaste='javascript:return false;' οncοpy='javascript:return false;' oncut='javascript:return false;'>";
dialogPageBodyDiv += " <iframe id='" + ID + "_Frame' οnresize=/"ResetDialogPage('" + ID + "',this);/" frameborder='0' style='width:" + w + "px;height:" + h + "px' src='" + url + "'></iframe>";
dialogPageBodyDiv += "</div>";
dialogPageFootDiv += "<div id='" + ID + "_FootDiv'>";
dialogPageFootDiv += " <table border='0' cellpadding='0' cellspacing='0' class='DialogPageFoot'>";
dialogPageFootDiv += " <tr>";
dialogPageFootDiv += " <td style='padding-left: 10px;'>" + url + "<td>";
dialogPageFootDiv += " </tr>";
dialogPageFootDiv += " </table>";
dialogPageFootDiv += "</div>";
newWin.innerHTML = dialogPageHeadDiv + dialogPageBodyDiv + dialogPageFootDiv;
if(model)
{
CreateBackGroundDiv(WinZindex-1);
}
newWin.style.left = e.clientX;
newWin.style.top = e.clientY;
document.body.appendChild(newWin);
$(ID + "_Frame").opener = window;
return false;
}
/**********************************************************************/
//移动对象
/**********************************************************************/
var eventX=0,eventY=0,objX=0,objY=0;
var dragAble = false;
function redayDrag(obj){
if(event.button==1)
{
obj.setCapture();
var dialogPage = obj.parentNode;
eventX=event.clientX;
eventY=event.clientY;
objX=parseInt(dialogPage.style.left);
objY=parseInt(dialogPage.style.top);
dragAble=true;
}
}
function draging(obj){
if(dragAble)
{
var dialogPage = obj.parentNode;
dialogPage.style.left = objX + event.clientX - eventX;
dialogPage.style.top = objY + event.clientY - eventY;
}
}
function endDrag(obj)
{
if(dragAble)
{
obj.releaseCapture();
dragAble = false;
}
}