乙個視窗更新 storage,另乙個視窗監聽 window 物件的 storage 事件,來實現通訊。
注意:兩個視窗要同源(url的協議、網域名稱、埠號都要相同)
// 本視窗更新storage
localstorage.setitem('name', 'jim');
// 其他視窗監聽storage事件
window.addeventlistener('storage', (e)=>)
所有的 websocket 都監聽同乙個伺服器位址,利用 send 傳送訊息,利用 onmessage 獲取訊息的變化,不僅能跨視窗,還能跨瀏覽器,相容性最佳,只是需要消耗點伺服器資源。
let ws = new websocket('ws://localhost:3000/');
ws.onopen = (e) => ); // 通過伺服器中轉訊息
}ws.onmessage = (e) =>
詳情請見:postmessage
瀏覽器視窗有 window.name 屬性。這個屬性最大的特點是,無論是否同源,只要在同乙個視窗裡,前乙個網頁設定了這個屬性,後乙個網頁就可以讀取它。
詳情請見:window.name
瀏覽器視窗間通訊
瀏覽器多個標籤頁視窗間通訊,主要是指的同源的多個頁面間的通訊,主要方法有本地儲存通訊 web worker通訊 web socket通訊。通過瀏覽器對於同源頁面本地儲存是共享的策略實現通訊,主要可以使用localstorage cookie indexdb,注意對於sessionstroage是在同...
C 兩個窗體間的通訊
c 實現在form1中呼叫form2的資訊的方式.方法1 首先,我們在form2中定義 private form1 mf form 其次,更改form2的建構函式為有引數的 public form2 form1 myform 最後,在form1中,在要用到form2的地方申明如下 form2 f2 ...
C 兩個窗體間的通訊
c 實現在form1中呼叫form2的資訊的方式.方法1 首先,我們在form2中定義 private form1 mf form 其次,更改form2的建構函式為有引數的 public form2 form1 myform 最後,在form1中,在要用到form2的地方申明如下 form2 f2 ...