/*********************************************************************************************************/
/**
 * @author Royal
 *用于替代getElementById()
**/
function $id(oid) {
  return document.getElementById(oid);
}
/*********************************************************************************************************/
/**
 * @author Royal
 * @替换字符串中的特殊字符
**/
 function formatBRtoCHR(str) {
    str = str.toLowerCase();
    var reg = /<br>/g ;
    str = str.replace(reg,"\n")
    return str;
 }
 function formatPtoCHR(str) {
    str = str.toLowerCase();
    var reg = /<\/p>/g ;
    str = str.replace(reg,"\n")
    reg = /<p>/g ;
    str = str.replace(reg,"")
    return str;
 }
 function formatInputVal(str)  {
   var reg = /,/g ;
   str = str.replace(reg,"&sbquo;")
   var reg = /，/g ;
   str = str.replace(reg,"&sbquo;")
   reg = /\"/g ;
   str = str.replace(reg,"&quot;")
   reg = /“/g ;
   str = str.replace(reg,"&quot;")
   reg = /'/g ;
   str = str.replace(reg,"&quot;")
   reg = /‘/g ;
   str = str.replace(reg,"&quot;")
   return str;
}
/**
 * @author Royal
 * @输入时检查元素长度,并自动截取到默认长度
**/
function   fCkByte(o,   limit){  
   if(o!=null){  
      var   str=o.value+'';  
      var   num=0;  
      for   (var   i=0;   i<str.length;   i++){  
         if(num>limit)temp=i;  
            if(str.charCodeAt(i)>127||str.charCodeAt(i)<0) num+=2;  
            else   num++;  
         //alert(str.charCodeAt(i))  
         if(num>limit){    
               o.value=o.value.substr(0,i);
               alert('输入超出限制,最多可以输入'+limit+'个字符或者'+(limit/2)+'个汉字！');  
               return;  
           }
         }  
      }
}
/**
 * @author Royal
 * @去处字符串左右字符
**/
String.prototype.Trim = function(str) {
  var tmpstr;
  tmpstr = this.replace(/^\s+|\s+$/g,"");
  return tmpstr;
}
/**
 * @author Royal
 * @JS等比例缩略图片
**/
function autoResizeImage(ImgD,w,h){         //自动产生缩略图
    var flag=false;
    var image=new Image();
    var iwidth = w; //定义允许图片宽度
    var iheight = h; //定义允许图片高度
    image.src=ImgD.src;
    image.onload=function () {
　　  if (image.width>iwidth) {
　　    image.width = iwidth;
　　  }
　　}
    if(image.width>0 && image.height>0){
        flag=true;
        if(image.width/image.height>= iwidth/iheight){
            if(image.width>iwidth){
                ImgD.width=iwidth;
                ImgD.height=(image.height*iwidth)/image.width;
            }else{
                ImgD.width=image.width;
                ImgD.height=image.height;
            }
            ImgD.alt=image.width+"×"+image.height;
        }
        else{
            if(image.height>iheight){
                ImgD.height=iheight;
                ImgD.width=(image.width*iheight)/image.height;
            }else{
                ImgD.width=image.width;
                ImgD.height=image.height;
            }
            ImgD.alt=image.width+"×"+image.height;
        }
    }
}
/**
 * @author Royal
 * @删除数组中的元素
**/
Array.prototype.Remove = function(dx){
  if (isNaN(dx)||dx>this.length) {return false;}
  for (var i=0,n=0;i<this.length;i++) {
  	if (i!=dx) {
		this[n]=this[i];
		n++;
	}
  }
  this.length-=1;
}
/*********************************************************************************************************/
//msg 窗口
function msg() {
  var setStr,setW,setH;
  
  var backDiv,showDiv;
  var winMsg = function() {
     if (document.getElementById("backDiv_")) {
        document.body.removeChild(backDiv);
        document.body.removeChild(showDiv);
     }
     var iWidth = document.documentElement.scrollWidth; 
     var iHeight = document.documentElement.scrollHeight; 
     var bWidth = document.body.scrollWidth;
     var bHeight = document.body.scrollHeight;
     var bleft = document.body.scrollLeft;
     var btop = document.body.scrollTop;
     var sHeight = window.screen.height;
     var sWidth = window.screen.width;
     var pleft = parent.document.documentElement.scrollLeft;
     var ptop = parent.document.documentElement.scrollTop;
     var showDiv_top;
     backDiv = document.createElement("div"); 
     backDiv.id = "backDiv_"
     backDiv.style.cssText = "position:absolute;left:0px;top:0px;width:100%;height:"+Math.max(bHeight, iHeight)+"px;filter:Alpha(Opacity=30);opacity:0.3;z-index:101;cursor:wait";
     /////////解决IE7以前 select 优先级比 DIV  高问题
     if (window.ActiveXObject) {
         var msgbackifm=document.createElement("<iframe src=/js/blank.html   frameborder=0   marginheight=0   marginwidth=0   hspace=0   vspace=0   scrolling=no width=100% height=100% ></iframe>") 
         backDiv.style.width = backDiv.style.width;
         backDiv.style.height = backDiv.style.height;
         backDiv.appendChild(msgbackifm);
      }
      //////
      showDiv_top = ((sHeight-setH)/2)+ptop-120;
      if (showDiv_top>bHeight-setH) {
         showDiv_top = bHeight-setH;
      } 
      if (showDiv_top<0) {
      	 showDiv_top = 0;
      }
      document.body.appendChild(backDiv);
      showDiv = document.createElement("DIV");
      showDiv.id = "showDiv_"
      showDiv.style.position = "absolute";
      showDiv.style.cssText = "z-index:102;position:absolute;left:" + ((iWidth+bleft-setW)/2) +"px;top:" + showDiv_top + "px;width:"+setW+"px;height:"+setH+"px;padding:5px;";
      showDiv.innerHTML=setStr;
      
      document.body.appendChild(showDiv); 
  }
  this.closeWin = function() {
  	  if (backDiv!=null) {
  	  	  showDiv.innerHTML = "";
  	  	  document.body.removeChild(showDiv);
	      document.body.removeChild(backDiv);
	      backDiv = null;
	      showDiv = null;
      }
  }
  this.encodeStr = function(str) {
	return escape(str);
  }
  this.setAttlibe = function (str,w,h) {
      setStr = unescape(str);
      setW = w;
      setH = h;
      winMsg();
  }
}
/*********************************************************************************************************/
//ajax 组件
function ajax(){
  var xmlHttp = null;
  var dourl = "";
  var postString = "";
  var dofunc = "";   
  var reval = ""; 
  var dofunval = "";
  this.ajaxRval = "";
  var createXmlHttp = function() {
  		try {
	        xmlHttp = new XMLHttpRequest();
    	} catch(e) {
        	try {
            	 xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
	        } 
			catch(e2) {
    	         try {
        	        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
                 } catch(e3) {
               	    xmlHttp = null;
                 }
    	    }
	    }	
  }
  var callPostUrl = function() {
  	if (xmlHttp==null ) {
		alert("Error initializing XMLHttpRequest!")
		return false;
	}
	xmlHttp.open("POST",dourl,true);
	xmlHttp.onreadystatechange = updatePage;
    xmlHttp.setRequestHeader("Content-Length",postString.length);
    xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded;charset=GB2312");
    xmlHttp.send(postString);
  }
  var updatePage = function() {
  	var strDoc;
  	if (xmlHttp.readyState==4)	{
	   if (xmlHttp.status==200) {
	   	  strDoc = escape(xmlHttp.responseText);
	   	  this.ajaxRval = strDoc;
	   	  if (dofunc=="alert") {
	   	     msgobj.setAttlibe(strDoc,500,200)
	   	  }
		  else if (dofunc!="") {
		  	 if (dofunval=="") {
		  	 	eval(dofunc+"(\""+strDoc+"\")");
		  	 } else {
		  	    eval(dofunc+"("+dofunval+",\""+strDoc+"\")");
		  	 }
		  } else {
		     reval = strDoc;
		  }
	   } else {
	   	   //alert("Error DO XMLHttpRequest200!");
		   return false;
	   }
	}
  }
  this.setAttlibe = function(url,str,func) {
  	    dourl = url;
		postString = str;
		dofunc = func;
		dofunval = "";
		if (dourl!="") {
		   createXmlHttp();
		   callPostUrl();
		}
  }
  this.setAttlibeFun = function(url,str,func,funcval) {
  	    dourl = url;
		postString = str;
		dofunc = func;
		dofunval = unescape(funcval);
		if (dourl!="") {
		   createXmlHttp();
		   callPostUrl();
		}
  }
  this.encodeStr = function(str) {
	return escape(str);
  }
}
/*********************************************************************************************************/
var msgobj;
msgobj = new msg();





