最近項目中遇到一個與內嵌iframe頁面之間通信的問題,起初與原生之間通信很簡單,沒想到過與vue項目通信的問題,霎時間一臉懵*啊,百度了一下,原來是那么簡單,這里記錄下以供下次參考
//vue頁面 向 內嵌iframe傳遞事件 // vue頁面代碼 let frame = document.getElementById('iframeId'); // 或者用vue語法 let frame = this.$refs.iframeId frame.contentWindow.postMessage(object,'*'); // object為傳送的對象 *號為接收數據的項目地址 // iframe頁面 window.addEventListener('message',function(event){
·// 傳送的數據在event.data里面 })
// iframe頁面向vue項目頁面傳遞事件 // iframe頁面 window.parent.postMessage(object,'*'); // object為需要傳送的數據對象 *號為接收數據的項目url地址 //主頁面 window.addEventListener('message',,function(event){ // 數據在event.data對象中 })
