/*----------下为salert,ealert,walert三个方法所需的变量及代码,涉及的css代码在style.css文件中*/ var handScroll=null; var successalert =null; window.user = $.cookie("userManage"); window.auth = $.cookie("auth"); function clearCookie(){ $.cookie('auth',null); $.cookie('userManage',null); $.cookie('passManage',null); } /** * 先截取子串,后去空 * */ function trimss(str,start,end){ if(end==null){ return str.trim().substring(start).trim(); }else{ return str.trim().substring(start,end).trim(); } } //数组,批量下发命令 function arrayrequest(cmdarr,num,func){ if (num == null || num == 0) { num = 30; } var result = new Array(); var cmdstr = ''; for (var i = 0,j = 0;i < cmdarr.length;i++) { cmdstr += cmdarr[i] + '\r\n'; if (++j == num || i == cmdarr.length-1) { result = result.concat(Util.request("config",cmdstr)); j = 0; cmdstr = ''; } } if (func != null) { func(result); } return result; } /**********start 定义数组一些原始属性***************/ Array.prototype.theIndexOf=function(str){ for(var i=0;i= 0;i--) { if (this[i] == str) { return i; } } return -1; } Array.prototype.subIndexOf=function(str){ for(var i=0;i-1){ return new Array(i,j); } } return new Array(-1,-1); } Array.prototype.subLastIndexOf=function(str){ for(var i=this.length-1;i>=0;i--){ var j=this[i].indexOf(str); if(j>-1){ return new Array(i,j); } } return new Array(-1,-1); } /** * 添加数组中不存在的元素 * @param {array} na 添加元素的数组 * @return {array} 返回添加新元素的数组 */ Array.prototype.addArray = function(na){ for (var i = 0;i < na.length;i++) { var str = na[i]; if (this.getIndexOf(str) == -1) { this[this.length] = str; } } return this; } /** * 返回数组中不包含指定元素的子数组 * @param {array} notContainEles 不包含的数组 * @return {array} */ Array.prototype.otherEles = function(notContainEles){ var newArr = []; for(var i=0,l=this.length;i= this.length){ return this; } for (var i = dx;i < this.length - 1;i++){ this[i] = this[i+1]; } this.length -= 1; return this; } /** * 移除为空的数组元素 * @return {array} 返回元素值不为空的数组 */ Array.prototype.removeNull=function(){ var newarr=new Array(); for(var i=0;ithis.length){ end=this.length; } for(var i=start;i self.LIMIT() || getC("login") != '1') { // clearTimeout(self._timeoutHandle); // self._timeoutHandle = null; // if(window.dialogArguments) { // window.opener = null; // window.close(); // } else { // $.cookie('auth',null); // //$.cookie('test1',"test1"); // //top.location = "/index.htm"; // top.showTimeoutWin(); // } // return; // } // self._timeoutHandle = setTimeout(self.checkUsing, 2 * 1000); // // }, // // isFrame : function (url, pages) { // // var temp = "", temp1 = ""; // for (var i = 0, l = pages.length; i < l; i++) { // temp = url.slice(url.lastIndexOf('/') + 1); // temp1 = temp.slice(temp.lastIndexOf('\\') + 1); // if(temp1 == pages[i]) { // return i; // } // } // return -1; // }, // // /* // 对不是__pages中的页面进行监测,如果10分钟鼠标不动,就跳转会index.htm页面 // */ // init : function(){ // var __url = document.URL, __pages = ['index.htm', 'switch.htm', 'cache.htm'],self = SessionManager; // if(__url.indexOf(".htm") == -1){//首页不验证 // return ; // } // if (self.isFrame(__url, __pages) == -1) { // self.checkUsing(); // document.onmousemove = self.checkMove; // } // } // } // SessionManager.init(); //取消冒泡 function stopBubble(evt){ if(evt.preventDefault) { // Firefox evt.preventDefault(); evt.stopPropagation(); } else { // IE evt.cancelBubble=true; evt.returnValue = false; } } //设备ID function getDeviceOid(){ //return top.OID; var result = Util.cgi_request("sysinfo_rj.cgi", 0, "&cgi_dest=dev"); return result.oid; //return "1.3.6.1.4.1.4881.1.1.10.1.188"; } //设备型号 function getDeviceType(){ var result = Util.cgi_request("sysinfo_rj.cgi", 0, "&cgi_dest=dev"); return result.devtype; } function getDevicePorts(){ } //VIP id 转换成名称 function getVipName(vipId){ switch(vipId){ case 0 : return '连接交换机或路由器端口'; case 1 : return '连接服务器端口'; case 2 : return '连接重要PC端口'; default: return "普通端口"; } } //判断字符串是否含有中文字符 function validateChar(str,len) { if (str == "") { return false; } var iLength = 0; var Expression=/^[A-Za-z0-9]+$/; var objExp=new RegExp(Expression); if(objExp.test(str) == true){ return false; }else{ return true; } } /** * 光标聚焦于某个地方 * @param {object} obj是对象或者id */ function pointTo(obj){ var obj = typeof obj == "object" ? obj:$("#" + obj); obj.focus(); obj.select(); } function Trim(str){ return $.trim(str); } function parseXML(data, xml, tmp) { if (window.DOMParser) { //标准 IE9可以 tmp = new DOMParser(); xml = tmp.parseFromString(data, "text/xml"); } else { // IE xml = new ActiveXObject("Microsoft.XMLDOM"); xml.async = "false"; xml.loadXML(data); } tmp = xml.documentElement; if (!tmp || !tmp.nodeName || tmp.nodeName === "parsererror") { jQuery.error("Invalid XML: " + data); } return xml; } //通过端口号获得用1-3,5-8,9显示的端口范围 function getRangePort(str) { if (str == "") { return ""; } var Expression=/^[0-9]+$/; var objExp=new RegExp(Expression); var portArr = str.split(",").removeNull().delSame().sort(); i = portArr.length - 1; var portAg = ""; for (i; i > 0;i--) { if (portArr[i].indexOf("Ag") != -1) { portAg = portArr[i] + ',' + portAg; portArr[i] = ""; } else { break; } } if (portArr.length > 1) { portArr = portArr.removeNull().sort(function(a,b){ return a-b;}); } var portStr = ""; var i = 0; var j = 1; var count = 1; var portDown = parseInt(portArr[0]); if (portArr.length > 1) { for (i,j;i < portArr.length;j++,i++) { // if(! objExp.test(portArr[i])){ // portStr += portArr[i]+","; // i++; // j++; // if (count > 1) { // portStr += (portDown - count) + "-" + (portDown - 1) +","; // } // portDown = portUp; // count = 1; // } else { var portUp = parseInt(portArr[j]); if (++ portDown == portUp) { count++; continue; } else { if (count > 1) { portStr += (portDown - count) + "-" + (portDown - 1) +","; } else if(count == 1){ if (portDown != "NaN" ){ portStr += (portDown - count) +","; } } count = 1; portDown = portUp; } } } else { portStr = portArr[0]+ "," ; } portStr += portAg; portStr = portStr.lastIndexOf(",") + 1 == portStr.length ? portStr.substr(0,portStr.length - 1) :portStr; portStr = portStr.split(",").removeNull().join(","); return portStr; } /* 兼容 IE&FF&Safari * 支持对象的的属性排序 * 数说明: * arr表示数组 * type 0表示从大到小排序 * type 1表示从小到大排序 * keys对象中要排序的字段 */ function sortArray(arr,type,keys){ switch (type){ case 0:return arr.sort(function(a,b){a=(keys)?(a[keys])?a[keys]:a:a;b=(keys)?(b[keys])?b[keys]:b:b; return a>=b?-1:(a>b)?0:1; }); break; case 1:return arr.sort(function(a,b){a=(keys)?(a[keys])?a[keys]:a:a;b=(keys)?(b[keys])?b[keys]:b:b; return a<=b?-1:(a=b?-1:(a>b)?0:1; }); break; } } /** * 保留小数点取1位 */ function toDecimal(x) { var f = parseFloat(x); if (isNaN(f)) { return; } f = Math.round(x*10)/10; return f; } //子网掩码长度和mask值转换 /*----------get functions up-------*/ //长度与mask互转 function masktolength(mask){ return maskarray().theIndexOf(mask); } function lengthtomask(length){ return maskarray()[length]; } function maskarray(){ return new Array("0.0.0.0","128.0.0.0","192.0.0.0","224.0.0.0","240.0.0.0","248.0.0.0","252.0.0.0","254.0.0.0","255.0.0.0","255.128.0.0","255.192.0.0","255.224.0.0","255.240.0.0","255.248.0.0","255.252.0.0","255.254.0.0","255.255.0.0","255.255.128.0","255.255.192.0","255.255.224.0","255.255.240.0","255.255.248.0","255.255.252.0","255.255.254.0","255.255.255.0","255.255.255.128","255.255.255.192","255.255.255.224","255.255.255.240","255.255.255.248","255.255.255.252","255.255.255.254","255.255.255.255"); } //根据IP和子网掩码判断两个IP是否属于同个 网段 function ipmask(ip1,ip2,mask){ var arr1,arr2,arr3,arr4; var reg = /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/; if (reg.test(ip1)&®.test(ip2)&®.test(mask)) { arr1 = ip1.split(/\./); arr2 = ip2.split(/\./); arr3 = mask.split(/\./); for (var i=0;i<4 ;i++ ) { if ((parseInt(arr1[i])& parseInt(arr3[i]))!==parseInt(arr2[i])& parseInt(arr3[i])) { return false; } } return true; } return false; } /*----------下为salert,ealert,walert三个方法所需的变量及代码,涉及的css代码在style.css文件中*/ var handScroll=null; var successalert =null; var resource_public = new Array( ['','',''],//0 ['','',''],//1 ['','',''],//2 ['','',''],//3 ['','',''],//4 ['','设置成功!','Setting Success !'],//5 ['','设置失败!','Setting Failed !']//6 ) function alertclose(){ clearInterval(handScroll); clearInterval(successalert); $('.notificationdiv').remove(); } function alertpublic(str,type){ alertclose(); $('
').addClass('notificationdiv').appendTo('body'); var oldTopValue = parseInt($('.notificationdiv').css('top')); /*var showInfo = function() { $('.notificationdiv').animate({ 'top': oldTopValue + $(window).scrollTop() }, 800); handScroll = setTimeout(showInfo, 800); }; showInfo();*/ //$('.notificationdiv').css('top',$(window).scrollTop()+"px"); alert($(window).scrollTop()) $('
').addClass('notification').addClass(type).append($('
×
').click(function(){ $(this).parent().fadeOut(400, 0, function (){ clearInterval(successalert); clearInterval(handScroll); }); })).append($('
').attr('align','center').text(str+'')).appendTo('.notificationdiv'); } //错误提示 function ealert(str){ /*if(str==null){ str=resource_public[6][1]; } alertpublic(str,'error');*/ alert(str); } //警告提示 function walert(str){ alertpublic(str,'attention'); } //成功提示 function salert(str){ /*if(str==null){ str=resource_public[5][1]; } alertpublic(str,'success'); var bl=false; var autoclose = function() { if(bl==true){ clearInterval(successalert); clearInterval(handScroll); $('.notificationdiv').find('.close').click(); } bl=true; successalert = setTimeout(autoclose, 3000); }; autoclose();*/ top.showTip(str); } /*上为salert,ealert,walert三个方法*/ function switchAtkItem(title,targetId){ var img = $('img',title); if(img.attr("src").indexOf('arrow_down') != -1){ img.attr("src",'../img/arrow_next.gif'); }else{ img.attr("src",'../img/arrow_down.gif'); } $("#"+targetId).toggle(200); }