Vue.js 与 ActiveX 控件

爱⌒轻易说出口 提交于 2020-01-21 03:16:51

目前需要解决的问题有两个:

1、调用 ActiveX 控件函数

传统方式,如下。

document.getElementById('objMqtt').init()

 

其他方式,未考证。

参考链接:https://forum.vuejs.org/t/vue-ocx-vue/20324/6

参考链接:https://www.jianshu.com/p/5f9c6f05cda1

 

2、Vue.js 与 ActiveX 事件

方法一:使用 attachEvent 或者 addEventListener 方法。

据说在IE8-10可用,不过未能实现。

参考链接:https://blog.csdn.net/youyouwoxing1991/article/details/88649638

 

方法二:动态生成脚本,渲染到页面上。IE 9-11,测试成功。

1.在methods中,新增事件触法的方法。

wakeUp(msg) {
      console.log('receive:' + msg)
    }

 

2.在methods中,新增方法,用于动态生成ActiveX控件事件绑定。

initActiveXObject () {
      var scriptStr = document.createElement('script')
      scriptStr.setAttribute('for', 'obj1')
      scriptStr.event = 'UserStopInfo(strMsg)'
      scriptStr.appendChild(document.createTextNode(activeXListener.wakeUp(strMsg)'))
      document.body.appendChild(scriptStr)
      window.activeXListener = this
    }

 

3.在mouted方法中,初始化ActiveX控件。

mounted () {
    this.initActiveXObject()
  }

参考链接:https://www.jb51.net/article/158432.htm

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!