⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mask.js

📁 精美javascript仿XP对话框,客户端与后台调用均无问题,后台调用时防止IE提示“internet explore 无法打开internet站点 已终止操作” 支持IE,火狐浏览器
💻 JS
📖 第 1 页 / 共 4 页
字号:
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

}
classMask.Browser.init();

classMask.delObj=function()
{
    if (classMask.objMask!=null)
    {
      document.body.removeChild(classMask.objMask);
      classMask.objMask=null;
    }
}
classMask.divMaskUpdate=function()
{
    if (classMask.objMask!=null)
    {        
        var ps = classMask.getPageSize();
        with (document.body)
        {	  
        var TBMargin =(style.marginTop)?(parseInt(style.marginTop)):0;//样式边框 
            TBMargin+=(style.marginBottom)?(parseInt(style.marginBottom)):0;//样式边框 
        var LRMargin =(style.marginLeft)?(parseInt(style.marginLeft)):0;//样式边框 
            LRMargin+=(style.marginRight)?(parseInt(style.marginRight)):0;//样式边框 
        }     
        classMask.objMask.innerHTML=classMask.tempMask.evaluate({MsgText:classMask.Guage});
        classMask.objMask.setStyle({width:(ps.PageW+LRMargin)+"px",height:(ps.PageH+TBMargin)+"px"});
    }
}
classMask.divMaskInit=function()
{/*屏蔽层*/
	try
	{ 
		if (classMask.objMask==null)
		{
		  classMask.objMask=new Element("div",{id:"divPageMask"});			  
		  classMask.objMask.setStyle({
			zIndex:998,
	    position:"absolute",
	    backgroundColor:"#0055EA",              
	    left:"0px",
	    top:"0px",
			margin:"0px",  
			display:"none"
			});
		  classMask.objMask.setOpacity(0.3);			  
         
		  $(document.body).insert(classMask.objMask);
		  classMask.objMask.style.MozUserSelect="none";/* -moz-user-select:none */;
          classMask.objMask.onselectstart=function(){return false};/*禁止选取*/
		  classMask.errMsg="OK";			  			  
		} 

        if (classMask.objMask!=null)
        {
          classMask.divMaskUpdate();
          classMask.objMask.style.display=(classMask.Flag==true)?"":"none";		
        }
		
	}catch(e){classMask.ErrMsg="DivMask\r\n"+new String(e);}
	
}

classMask.divMask=function()
{  
  if (classMask.Browser.browser=="Explorer")
  {
      if (document.readyState=="complete")
      {
        classMask.divMaskInit();
      }
      else
      {
        document.onreadystatechange=function(){
             if(document.readyState=="complete") classMask.divMaskInit();
        }
      }
   }
   else
   {
     classMask.divMaskInit();
   }
}
classMask.Mask=function(Bool)
{	
  classMask.Flag=Bool;
  classMask.divMask();
  classMask.errMsg=(Bool==true)?"启用":"禁用";

}
/* 关闭对话框 */
classMask.hideMsg=function()
{    

  classMask.Mask(false);  
  
  if (classMask.objMsgbox)
  {
    document.body.removeChild(classMask.objMsgbox);
    classMask.objMsgbox=null;
  }      
  if (classMask.useObj)
  {
    classMask.useObj.focus();
  }
}
/* 提示对话框 */
classMask.showMsgInit=function(SText,STitle,W,H,UseObj)
{
    // 获得事件Event对象,用于兼容IE和FireFox
    function getEvent() { 
        return window.event || arguments.callee.caller.arguments[0]; 
    } 
    classMask.Mask(true); 
    classMask.useObj=UseObj?UseObj:null;  
    var w=(typeof(W)=="number")?W:250;
    var h=(typeof(H)=="number")?H:50;
    var borderwidth = 2; //对话框边框宽度
    var titleheight = "20"; // 提示窗口标题高度  
    var bordercolor = "#555555"; // 提示窗口的边框颜色  
    var titlecolor = "#FFFFFF"; // 提示窗口的标题颜色  
    var titlebgcolor = "#444444"; // 提示窗口的标题背景色 
    var bgcolor = "#ffffff"; // 提示内容的背景色 
        
    var iWidth  = document.viewport.getWidth();  
    var iHeight = document.viewport.getHeight();       
    var offsetH = document.viewport.getScrollOffsets()["left"];
    var offsetV = document.viewport.getScrollOffsets()["top"]; 
    var sTitle=(typeof(STitle)=="string")?STitle+" ":"信息";
    var sText=(typeof(SText)=="string")?SText+" ":" ";

    if (classMask.objMsgbox!=null)
    {
      document.body.removeChild(classMask.objMsgbox);
      classMask.objMsgbox=null;
    }
    try
    { 
        classMask.objMsgbox=new Element("div",{id:"divPageMask_Msgbox"});
        classMask.objMsgbox.setStyle({
        zIndex:999,
        position:"absolute",
        border:borderwidth+"px solid "+bordercolor,
        backgroundColor:bgcolor,
        fontSize:"10pt",
        textAlign:"center",
        padding:"0px",
        margin:"0px",            
        width:w+"px",
        height:h+"px", 
        //height:"expression(("+H+">50)?'"+H+"px':'auto')",               
        left:"2000px",
        top:"2000px",
        tableLayout:"fixed",
        wordWrap:"break-word",
        lineHeight:"120%"
        });

        $(document.body).insert(classMask.objMsgbox);	

        var tb = new Element("table",{id:"tablePageMask_Msgbox"});    
        classMask.objMsgbox.insert(tb);
        tb.style.cssText = "margin:0px;border:0px;padding:0px;-moz-user-select:none";
        tb.onselectstart=function(){return false};/*禁止选取*/
        tb.cellSpacing = 0; 
        var tr = tb.insertRow(-1); 
        var titleBar = tr.insertCell(-1); 
        titleBar.style.cssText = classMask.tempMsgboxTitleBar.evaluate({titleheight:titleheight,titlecolor:titlecolor,titlebgcolor:titlebgcolor}); 
        titleBar.style.paddingLeft = "5px";
        titleBar.innerHTML = sTitle; 
       
        var closeBtn = tr.insertCell(-1); 
        closeBtn.style.cssText = "background-color:" + titlebgcolor; 
        closeBtn.style.paddingRight = "5px";
        closeBtn.innerHTML = classMask.tempMsgboxClose.evaluate({ImagClose: classMask.closeImage}); 
        closeBtn.onclick = classMask.hideMsg; 
       
        var msgBox = tb.insertRow(-1).insertCell(-1); 
        msgBox.style.cssText = "letter-spacing:1px;font:normal 14px '宋体';padding:8px;background-color:"+bgcolor; 
        msgBox.style.paddingBottom  = "0px"; 
        msgBox.colSpan  = 2; 
        msgBox.innerHTML = sText;  
         
        if (classMask.Browser.browser=="Explorer")
        {
           w=Math.max(w,classMask.objMsgbox.offsetWidth);
           h=Math.max(h,classMask.objMsgbox.offsetHeight);
        }
        else
        {
          w=Math.max(w,$("tablePageMask_Msgbox").offsetWidth+borderwidth*2);
          h=Math.max(h,$("tablePageMask_Msgbox").offsetHeight+borderwidth*2);
        }
        //更新位置 
        classMask.objMsgbox.setStyle({left:Math.round(Math.abs(((iWidth-w)/2)))+offsetH+"px",top:Math.round(Math.abs(((iHeight-h)/2)))+offsetV+"px",width:w+"px",height:h+"px"});
        //圆角 
        classMask.classRound(classMask.roundSettings,classMask.objMsgbox);
        var moveX = 0; 
        var moveY = 0; 
        var moveTop = 0; 
        var moveLeft = 0; 
        var moveable = false; 
        var docMouseMoveEvent = document.onmousemove; 
        var docMouseUpEvent = document.onmouseup; 
        titleBar.onmousedown = function() { 
            var evt = getEvent(); 
            moveable = true;  
            moveX = evt.clientX; 
            moveY = evt.clientY; 
            moveTop = parseInt(classMask.objMsgbox.style.top); 
            moveLeft = parseInt(classMask.objMsgbox.style.left); 
             
            document.onmousemove = function() { 
                if (moveable) { 
                    var evt = getEvent(); 
                    var x = moveLeft + evt.clientX - moveX; 
                    var y = moveTop + evt.clientY - moveY; 
                    if ( x > 0 &&( x + w < (document.viewport.getWidth()+document.viewport.getScrollOffsets()["left"])) && y > 0 && (y + h < (document.viewport.getHeight()+document.viewport.getScrollOffsets()["top"])) ) { 
                        classMask.objMsgbox.style.left = x + "px"; 
                        classMask.objMsgbox.style.top = y + "px"; 
                    } 
                }     
            }; 
            document.onmouseup = function () {  
                if (moveable) {  
                    document.onmousemove = docMouseMoveEvent; 
                    document.onmouseup = docMouseUpEvent; 
                    moveable = false;  
                    moveX = 0; 
                    moveY = 0; 
                    moveTop = 0; 
                    moveLeft = 0; 
                }  
            }; 
        }     
    }catch(e){alert("showMsg\r\n"+e)}     

}

classMask.showMsg=function(SText,STitle,W,H,UseObj)
{
  if (classMask.Browser.browser=="Explorer")
  {
      if (document.readyState=="complete")
      {
        classMask.showMsgInit(SText,STitle,W,H,UseObj);
      }
      else
      {
        document.onreadystatechange=function(){
             if(document.readyState=="complete") classMask.showMsgInit(SText,STitle,W,H,UseObj);
        }
      }
  }else
  {/* 非IE 浏览器 */
     classMask.showMsgInit(SText,STitle,W,H,UseObj);
  }
}
/****在X秒后关闭窗****/
classMask.autoClose=function()
{
  clearTimeout(classMask.Timer);
  if (/[0-9]+/g.test(classMask.closeTime))
  {
      classMask.closeTime=parseInt(classMask.closeTime)<1?1:classMask.closeTime;
      classMask.Timer=window.setTimeout(function(){classMask.hideMsg();},classMask.closeTime*1000);
  }
}

classMask.Load=function()
{
    if (typeof(window.attachEvent)!="undefined")
    { //IE
      window.attachEvent("onload",classMask.divMask);
      window.attachEvent("onresize",classMask.divMask);
      window.attachEvent("onunload",classMask.delObj);
    }
    else
    { //FF other 
      window.addEventListener("load",classMask.divMask,false);
      window.addEventListener("resize",classMask.divMask,false);
      window.addEventListener("unload",classMask.delObj,false);
    } 
}  
classMask.Load();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -