欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue框架下引入ActiveX控件的問題解決

 更新時間:2019年03月25日 14:51:34   作者:Heaven  
這篇文章主要介紹了Vue框架下引入ActiveX控件的問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

最近參與了山東某一公司的呼叫中心系統(tǒng)的開發(fā)項(xiàng)目,我負(fù)責(zé)的模塊是在公司已有的前端Vue框架下集成他們的軟電話條功能。從開始到結(jié)束所遇到的幾個問題如下:

1.如何將ActiveX控件引入Vue,并且在頁面上成功渲染;

2.如何調(diào)用ActiveX已提供的方法;

3.如何監(jiān)聽ActiveX的動作;

(注:以上問題在html的文件里不存在)

我們先來看下第一個問題:如何將ActiveX控件引入Vue,并且在頁面上成功渲染。如何將ActiveX控件渲染到頁面上。根據(jù)客戶開發(fā)人員提供的demo,`<object id="" classid=""></object>`拷貝到vue文件中,如圖所示

yarn run dev,運(yùn)行成功,但是頁面空出很大一塊空白區(qū)域,很顯然,沒有渲染成功。經(jīng)過查詢,ActiveX控件只支持在IE瀏覽器下使用(有點(diǎn)坑)

這算是解決了第一個問題,同樣,小伙伴可以通過動態(tài)生成的方式渲染到頁面上,代碼如下:

let obj = document.createElement('object')
obj.setAttribute('id', 'activex')
obj.setAttribute('classid', 'clsid:{控件id}')
obj.setAttribute('width', 1500)
obj.setAttribute('height', 100)
var _obj = document.getElementById("要渲染的節(jié)點(diǎn)");
_obj.appendChild(obj)

接下來我們來看第二個問題:如何調(diào)用ActiveX已提供的方法。

渲染是可以了,但是卻無法調(diào)用控件提供的方法。根據(jù)demo:`softphonecontrol.MakeCall(paramsItem)`,無法執(zhí)行,后來又采取嵌入iframe方式(還記得剛剛說的嗎,這個控件在單純的html頁面沒有任何問題,當(dāng)然前提是IE瀏覽器)。最終找到原因,IE的瀏覽器需要做下設(shè)置設(shè)置:設(shè)置-Internet選項(xiàng)-安全/自定義級別-Active控件和插件-對未標(biāo)記為可安全執(zhí)行腳本的ActiveX控件初始化并執(zhí)行腳本,選擇"啟用"或者"提示")

最后一個問題啦:如何監(jiān)聽ActiveX的動作。

根據(jù)demo:

<script  for= "softphonecontrol"  event= "OnLogRingUp(param1,param2)"  language= "javascript"> 
 alert("param1:"+param1+" "+"param2:"+param2); 
</script> 

再次提醒一下,這種寫法也只有IE支持,谷歌支持一些簡單的window.reload、onclick之類的方法,<script></script>中間的alert就是監(jiān)聽后續(xù)需要做的事情。我將這段代碼直接拷貝到vue文件里:

哈哈,成功編譯,但是無法監(jiān)聽到。換個思路,動態(tài)渲染到根節(jié)點(diǎn)呢,像上面提到的:

 initRingUpSript:function(){
    var ring = document.createElement("script");
    ring.setAttribute("for","softphonecontrol");
    ring.event="OnLogRingUp(Call_ID,CORP_CODE)"; 
    ring.appendChild(document.createTextNode("phoneListener.ringUp(Call_ID,CORP_CODE)"))
    document.body.appendChild(ring)
   },

值得注意的是:此方法會將<script>function</script>渲染到頁面上,但是想執(zhí)行Vue的methods的方法的話,還需要在mounted里加上一句代碼: window.phoneListener = this;

這段代碼的作用是將Vue的this所指向賦值給全局的變量phoneListener,這個變量,可隨意。

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue3+vite+移動端webview打包后頁面加載空白問題解決辦法

    vue3+vite+移動端webview打包后頁面加載空白問題解決辦法

    這篇文章主要給大家介紹了關(guān)于vue3+vite+移動端webview打包后頁面加載空白問題的解決辦法,文中通過代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2024-06-06
  • vue?使用addRoutes動態(tài)添加路由及刷新頁面跳轉(zhuǎn)404路由的問題解決方案

    vue?使用addRoutes動態(tài)添加路由及刷新頁面跳轉(zhuǎn)404路由的問題解決方案

    我自己使用addRoutes動態(tài)添加的路由頁面,使用router-link標(biāo)簽可以跳轉(zhuǎn),但是一刷新就會自動跳轉(zhuǎn)到我定義的通配符?*?指向的404路由頁面,這說明沒有找到指定路由才跳到404路由的,這樣的情況如何處理呢,下面小編給大家分享解決方案,一起看看吧
    2023-10-10
  • vue3導(dǎo)入excel并解析excel數(shù)據(jù)渲染到表格中(純前端實(shí)現(xiàn))

    vue3導(dǎo)入excel并解析excel數(shù)據(jù)渲染到表格中(純前端實(shí)現(xiàn))

    在Vue中實(shí)現(xiàn)導(dǎo)出Excel有多種方式,可以通過前端實(shí)現(xiàn),也可以通過前后端配合實(shí)現(xiàn),下面這篇文章主要給大家介紹了關(guān)于vue3導(dǎo)入excel并解析excel數(shù)據(jù)渲染到表格中的相關(guān)資料,文中介紹的方法是純前端實(shí)現(xiàn),需要的朋友可以參考下
    2024-04-04
  • express+vue+mongodb+session 實(shí)現(xiàn)注冊登錄功能

    express+vue+mongodb+session 實(shí)現(xiàn)注冊登錄功能

    這篇文章主要介紹了express+vue+mongodb+session 實(shí)現(xiàn)注冊登錄,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-12-12
  • Vue.js學(xué)習(xí)筆記之 helloworld

    Vue.js學(xué)習(xí)筆記之 helloworld

    vue是法語中視圖的意思,Vue.js是一個輕巧、高性能、可組件化的MVVM庫,同時擁有非常容易上手的API。有需要的小伙伴可以參考下
    2016-08-08
  • vue中實(shí)現(xiàn)div可編輯并插入指定元素與樣式

    vue中實(shí)現(xiàn)div可編輯并插入指定元素與樣式

    這篇文章主要給大家介紹了關(guān)于vue中實(shí)現(xiàn)div可編輯并插入指定元素與樣式的相關(guān)資料,文中通過代碼以及圖文將實(shí)現(xiàn)的方法介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用vue具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2023-09-09
  • vue.js分頁中單擊頁碼更換頁面內(nèi)容的方法(配合spring springmvc)

    vue.js分頁中單擊頁碼更換頁面內(nèi)容的方法(配合spring springmvc)

    下面小編就為大家分享一篇vue.js分頁中單擊頁碼更換頁面內(nèi)容的方法(配合spring springmvc),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-02-02
  • vue復(fù)制內(nèi)容到剪切板代碼實(shí)現(xiàn)

    vue復(fù)制內(nèi)容到剪切板代碼實(shí)現(xiàn)

    這篇文章主要給大家介紹了關(guān)于vue復(fù)制內(nèi)容到剪切板代碼實(shí)現(xiàn)的相關(guān)資料,在Web應(yīng)用程序中剪貼板(Clipboard)操作是非常常見的操作之一,需要的朋友可以參考下
    2023-08-08
  • vue中的ref和$refs的使用

    vue中的ref和$refs的使用

    這篇文章主要介紹了vue中的ref和$refs的使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-11-11
  • vue關(guān)于下載文件常用的幾種方式

    vue關(guān)于下載文件常用的幾種方式

    這篇文章主要介紹了vue關(guān)于下載文件常用的幾種方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10

最新評論