记录紫图高拍仪的一个使用兼容问题

news/2024/11/27 19:57:21/

本码农接到领导任务:需要将紫图高拍仪接入当前web系统.

但是由于本马大哈只埋头苦干,并没有询问开发详细细节,就导致项目发布到生产环境上问题百出.

主要问题有两点:
1.客户使用的浏览器为IE8,IE8在我眼里简直就是上个世纪的浏览器.
2.紫图提供的js文件问题

客户的浏览器一定为IE8,IE8是不支持websocket的,而紫图高拍仪的实现依赖于websocket,故紫图高拍仪无法在客户的电脑上运行.但是请大家看紫图弱智的驱动连接代码:

function ConnectServer(a, b) {"WebSocket" in window ? websocket = new WebSocket(websocketurl) : window.WebSocket ? websocket = new WebSocket(websocketurl) : "MozWebSocket" in window ? websocket = new MozWebSocket(websocketurl) : alert("浏览器版本太低!请使用Chrome、Firefox、IE10+浏览器!"), websocket.onopen = function () {connected = !0, a(b)}, websocket.onclose = function () {connected = !1, onMessage({data: JSON.stringify({FuncName: "Connect", result: 0})})}, websocket.onmessage = function (a) {onMessage(a)}, websocket.onerror = function () {}
}

紫图在连接服务时如发现浏览器不支持websocket,alert提醒用户后竟然没有return,这就导致onopen这个函数报错,导致页面无法正常加载.
修改如下:

function ConnectServer(a, b) {"WebSocket" in window ? websocket = new WebSocket(websocketurl) : window.WebSocket ? websocket = new WebSocket(websocketurl) : "MozWebSocket" in window ? websocket = new MozWebSocket(websocketurl) : function(){alert("浏览器版本太低!请使用Chrome、Firefox、IE10+浏览器!");return;}, websocket.onopen = function () {connected = !0, a(b)}, websocket.onclose = function () {connected = !1, onMessage({data: JSON.stringify({FuncName: "Connect", result: 0})})}, websocket.onmessage = function (a) {onMessage(a)}, websocket.onerror = function () {}
}

我事先是不知道IE8是不支持console的,但是我的代码页面使用了部分console来输出一些关键消息,线上发布一次版本过于耗时,于是想办法热更新JS文件自己在页面加载的时候给window对象予以console的定义:

window.console = window.console || (function () {var c ={}; c.log = c.warn = c.debug = c.info = c.error = c.time = c.dir = c.profile= c.clear = c.exception = c.trace = c.assert = function(){};return c;
})();

上面代码来自百度"IE8不支持console".

在页面较前部分的script标签引入的任一js文件中加入上面的代码即可解决IE无法console打印的问题.


http://www.ppmy.cn/news/249862.html

相关文章

Linux系统高拍仪二次开发(支持银河麒麟/统信uos/中科方德系统)

文豆高拍仪Linux版BS(Web)架构二次开发包已可支持银河麒麟KYLin和统信UOS国产操作系统及CPU,兼容性能优异稳定可靠,可实现与业务软件无缝对接,助力国产化进程,为用户提供更好的办公体验。 支持平台:银河麒麟MIPS(龙芯…

讯派高拍仪联合钉钉使用教程

讯派高拍仪联合钉钉使用教程 产品型号:便携式实物展台HV600(HDMI) www.shyiyou.cn 要在浏览器中复制网址打开,不建议直接用微信或者QQ打开 打开之后的界面: 先去下载中心----》软件下载—》最后点击讯派高拍仪软件下载(最后看…

方正高拍仪文件上传到服务器,高拍仪拍摄文件后如何进行文字识别?本地文件能否导入高拍仪进行识别?...

原标题:高拍仪拍摄文件后如何进行文字识别?本地文件能否导入高拍仪进行识别? 日常办公和学习中,常常有许多资料需要进行二次编辑,但受限于文件是纸质文档或者图片文件,无法直接进行二次编辑,只能…

中纬ZOOM35全站仪参数和使用说明书

免棱镜测程采用全新EDM,明显提升测距功能。极细可见激光免棱镜测程最高可达1000m,同等测程下无棱镜精度较高。 绝对编码度盘中纬静态条码式码盘测角,开机无需初始化,利用同样技术的徕卡全站仪,测角精度可高达0.5&#…

良田高拍仪集成WEB说明

良田高拍仪集成WEB说明 ——By wuhebin 20180705 1. 硬件说明:良田高拍仪S620A3F(R) 带二代身份证阅读器和拍照摄像头等 2. WEB平台集成读卡器功能说明(注只支持IE浏览器,高版本IE或360需要在兼容模式下: 3. WEB增加控件OCX代码如下&a…

切换不了摄像头 高拍仪_高拍仪常见问题解答

三、如何确定影像仪已安装成功? 在 2013-03-05 版本中,安装完“国光影像仪验印控件”后,运行:开始菜单 -> 程序- > 国光影像仪验印控件 -> 国光影像仪验印控件测试程序, 在该程序中可分别打开主摄…

高拍仪用法及部分问题处理

一、接入项目并使用 1.1 安装高拍仪驱动 下载地址: https://www.eloam.cn/download/list/1 安装完成之后,打开驱动程序,即可看到接入的高拍仪的图像。 1.2 网页中打开高拍仪摄像头 实际开发中,我们需要在网页中打开高拍仪的摄…

使用cmd查看电脑显卡的信息

使用cmd查看电脑显卡的信息,调用nvidia-smi查看显卡使用情况报错如下: ‘nvidia-smi’ 不是内部或外部命令,也不是可运行的程序 报错原因 因为它找不到该命令。这个文件是一个exe文件,一般都在下面这个文件夹中。 C:\Program Fi…