/*定于初始化表头数组*/ //创建表头 function createTab(titleName,array,buttonName,buttonClickFunction,itemWidth) { let topTab = document.createElement("table"); let MyDiv = document.getElementById('right'); let len = array.length; let title = document.createElement("h3"); title.innerHTML=titleName; title.style.cssText = "margin-left: 40px; margin-top:20px;"; let br=document.createElement("br"); for(let i=0;i<1;i++){ tr=topTab.insertRow(i); for(let j=0;j0){ for (let i = 0; i < jsonstr.length; i++) { tab.insertRow(i+1); col = 0; for (let j =0; j<=jsonstr[i].length; j++) { if (typeof this.hideItem == "undefined" || this.hideItem == null || this.hideItem.includes(j)==false){ td = tab.rows[i+1].insertCell(col); if (typeof this.itemsWidth !== "undefined" && this.itemsWidth !== null){ width = this.itemsWidth[j]; }else{ width = this.itemWidth; } td.style.cssText = "width:"+width+"px;height:40px;text-align:center;border-color:#101010; border:#a2a2a2 0px solid;" if(j"+this.itemFunction[0]+""; }else{ connect="编辑删除"; if (typeof this.additionItem !== "undefined" && this.additionItem !== null){ connect = connect + ""+this.additionItem[0]+""; } } td.innerHTML=connect; tab.rows[i+1].cells[col].style.background = 'snow'; } col++; } } } } return this.lastIndex; }; this.updatePage = function(){ let jsonstr = eval(this.results); if(jsonstr!=null && jsonstr.length>0){ var tab = document.getElementById('mytable'); var rowNum = tab.rows.length; for (i=0;i endTime){ return; } } } function tjdLog(logStr){ console.log(logStr); } function timestampToTime(timestamp) { //var date = new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 var date = new Date(timestamp);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 var Y = date.getFullYear() + '-'; var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1):date.getMonth()+1) + '-'; var D = (date.getDate()< 10 ? '0'+date.getDate():date.getDate())+ ' '; var h = (date.getHours() < 10 ? '0'+date.getHours():date.getHours())+ ':'; var m = (date.getMinutes() < 10 ? '0'+date.getMinutes():date.getMinutes()) + ':'; var s = date.getSeconds() < 10 ? '0'+date.getSeconds():date.getSeconds(); return Y+M+D+h+m+s; } (function(window) { var FormBuilder = function(data) { this.data = data; }; FormBuilder.prototype.create = function() { var html = ''; for (var k in this.data) { var item = {tag: '', text: '', attr: {}, option: null}; for (var n in this.data[k]) { item[n] = this.data[k][n]; } html += builder.toHTML(item); } return '' + html + '
'; }; var builder = { toHTML: function(obj) { var html = this.item[obj.tag](this.attr(obj.attr), obj.option, obj.value); return '' + obj.text + '' + html + ''; }, attr: function(attr) { var html = ''; for(var k in attr) { html += k + '="' + attr[k] + '" '; } return html; }, item: { input: function(attr, option) { var html = ''; if (option === null) { html += ''; } else { for (var k in option) { html += ''; } } return html; }, select: function(attr, option) { var html = ''; for (var k in option) { html += ''; } return ''; }, textarea: function(attr) { return ''; }, label: function(attr,option,value) { return ''; } } }; window['FormBuilder'] = FormBuilder; })(window); allAreaName = ""; allCamera = ""; allRoleNames = ""; inChannelCameraId = ""; outChannelCameraId = ""; scanCameraId = ""; envCameraId = ""; cameraIpList = []; function getCameraIp(ipCameraName){ tjdLog("getCameraIp: ipCameraName = " + ipCameraName); tjdLog("getCameraIp: cameraIpList = " + cameraIpList); for(i=0;i X`; div.style.height = "50px"; div.style.padding = "10px 10px"; div.style.background = "#193c7b"; div.style.boxSizing = "border-box"; div.style.borderRadius = "8px 8px 0 0"; promptBox.appendChild(div); //创建提示信息 div = document.createElement("div"); e = ''; inputlist = eval(option.input); height = 0; msgVal = eval(option.msgVal); for(i=0;i

'; }else e += '

'; height += 56; } div.innerHTML = e; div.style.height = height + "px"; //"240px"; div.style.padding = "10px 10px"; div.style.boxSizing = "border-box"; div.id = "popBoxContent"; selects = eval(option.selects); if (typeof selects !== "undefined" && selects !== null){ k=i+1; for(i=0;i'; div.style.height = "50px"; div.style.padding = "10px 20px"; div.style.boxSizing = "border-box"; promptBox.appendChild(div); } //注册事件 function regEvent() { if (!isRegEvent) { //未注册事件 //1.点击关闭,点击蒙层,点击取消按钮 closeSpan.onclick = function () { mongolia.style.display = "none"; //隐藏蒙层 }; okBtn.onclick = function () { option && option.okFunction && (ret = option.okFunction()); if(ret == 1) mongolia.style.display = "none"; //隐藏蒙层 } cancelBtn.onclick = function () { option && option.cancelFunction && option.cancelFunction(); mongolia.style.display = "none"; //隐藏蒙层 } //2.拖动提示框事件 window.onmousedown = function (e) { var target = getTarget(e.target); //是否包含目标元素 if (target) { var style = window.getComputedStyle(target); var left = parseInt(style.left); var top = parseInt(style.top); var disX = parseInt(e.pageX) - left; var disY = parseInt(e.pageY) - top; window.onmousemove = function (e) { var newLeft = parseInt(e.pageX) - disX; var newTop = parseInt(e.pageY) - disY; promptBox.style.left = newLeft + "px"; promptBox.style.top = newTop + "px"; }; window.onmouseup = window.onmouseleave = function () { window.onmousemove = null; } } }; function getTarget(target) { while (target) { //if (target.tagName === "DIV" && target.style["data-popBox-id"] === "promptBox") { if (target.tagName === "DIV" && target.style["data-popBox-id"] === "title") { return target; } else { target = target.parentElement; } } return false; } } } /** * @param {object} opts * opts.title : 提示标题 * opts.context : 提示信息 * opts.cancelText:取消按钮内容 * opts.okText:确定按钮内容 * opts.cancelText:取消按钮内容 * opts.okFunction:确定按钮的回调函数 * opts.cancelFunction:取消按钮的回调函数 */ function showMsg(opts) { if (typeof opts === "string") { option = { context: opts } } else { option = opts || {}; } if (promptBox){ mongolia.removeChild(promptBox); promptBox = null; } tjdLog("input = " + option.input + "length = " + eval(option.input).length); if (typeof option.selects !== "undefined" && option.selects !== null){ tjdLog("selects = " + option.selects + "length = " + eval(option.selects).length); for(i=0;i preTime) timeLong = curTime - preTime; else timeLong = 1000 + curTime - preTime; //tjdLog(timeLong+"毫秒:size=" + myQueue[wsobj].size()); } setTimeout(arguments.callee,1000/25); },1000/25); } //创建socket连接功能函数 function connectCamera(wsobj,cameraId) { if ("WebSocket" in window) { tjdLog("connectCamera:cameraId=" + cameraId + ", VideoMonitorPort=" + (VideoMonitorPort+cameraId) + ", wsobj=" + wsobj); myQueue[wsobj] = new Queue(); var ip = thisIp; var host = "ws://" + ip+":" + (VideoMonitorPort+cameraId); //tjdLog("socket[wsobj]: " + socket[wsobj]); if(socket[wsobj]==0){ socket[wsobj]= new WebSocket(host); socket[wsobj].binaryType = "arraybuffer"; try { //连接事件 socket[wsobj].onopen = function (msg) { // alert(wsobj+":连接已建立!"); socket[wsobj].send("user:monitor"); }; //错误事件 socket[wsobj].onerror =function (msg) { //alert("错误:"+msg.data); } //消息事件 socket[wsobj].onmessage = function (msg) { data = socketBufferToBase64(msg.data); img = document.getElementById('img'+wsobj); if(typeof data === String) { tjdLog("Received data string"); }else{ //tjdLog("Received arraybuffer"); img.src = "data:image/jpeg;base64," + data; //myQueue[wsobj].push(data); } }; //关闭事件 socket[wsobj].onclose = function (msg) { //alert((cameraId+1)+"号相机通信关闭!") }; }catch(ex) { log(ex); } }else{ socket[wsobj].send("user:monitor"); } //showCameraPicture(wsobj); }else{ // 浏览器不支持 WebSocket alert("您的浏览器不支持 WebSocket!"); } } //创建多个websock连接 function StartConnVideo() { //这里创建3个连接 for(var i=0;i<3;i++) { connectCamera(i,i); //创建连接 } } function StopConnVideo() { tjdLog("StopConnVideo: start"); for(i=0;i=2) lastIndex--; else lastIndex = 1; if(type==1) msg = 'CMD=getPlateRecord&startIndex='+lastIndex+'&pageRecords=30'; else if(type==2) msg = 'CMD=getInOutRecord&startIndex='+lastIndex+'&pageRecords=30'; postData(msg,showPrePage); } function nextPageData(type){ lastIndex ++; if(type==1) msg = 'CMD=getPlateRecord&startIndex='+lastIndex+'&pageRecords=30'; else if(type==2) msg = 'CMD=getInOutRecord&startIndex='+lastIndex+'&pageRecords=30'; postData(msg,showNextPage); } function showPrePage(results){ searchPage.results = results; ret = searchPage.updatePage(); } function showNextPage(results){ searchPage.results = results; ret = searchPage.updatePage(); if(ret==false){ lastIndex--; } }