0

我試圖創建一個jQuery/Javascript函數,通過它可以在網頁上使用多個div的數據來填充Chrome中相鄰窗口或選項卡上的表單。如何將DOM數據從一個窗口傳輸到另一個窗口?

我能夠捕獲數據,但有沒有一種方法來訪問其他標籤,或者我將不得不創建一個Chrome擴展?

+0

如果你不控制兩個頁面,那麼是的,你將需要一個擴展。如果你控制兩者,可能還有其他方法(想到postMessage) – Xan 2014-11-04 10:10:43

回答

0

取決於您是否可以控制這兩個頁面。

  1. 如果不控制接收頁面,然後訪問它的DOM將Chrome擴展注入Content Script的唯一途徑。它將能夠訪問該頁面的表格來填寫該表格,並與其他標籤進行通信,例如通過背景頁面。

    如果你想嘗試開發這樣的擴展,我高度建議通過Overview頁仔細閱讀。

  2. 如果你確實控制了這些頁面,這是一個奇怪的目標,但可以實現。

    • 假設頁面在同一個域上。然後他們共享localStorage/sessionStorage,如果您在另一箇中修改change event,將會觸發其中一個。

    • 如果它們不在同一個域中,但是您同時控制它們,則可以使用postMessage來查看數據傳輸。

請注意,雖然:你的問題說: 「轉移DOM數據」。以上所有解決方案僅會傳輸JSON-serializable數據(或字符串)。一些DOM相關數據,如HTMLElement本身,不能完全序列化。