1

我在兩個不同的選項卡中獲得了兩種不同的表單。一個來自我們系統的數據,另一個是另一個外部系統的接口,我們需要將數據複製到(XML或API集成不是這裏的選項)跨標籤複製數據

這就是說,打開兩個表單 - 在兩個不同的選項卡中 - 我需要一個greasemonkey腳本或類似的東西,它允許我將數據從一種表單複製到另一種表單(使用Javascript中的getValue方法)。

現在的問題是,我不知道如何引用一個特定的選項卡或窗口(從數據或數據寫入數據)的greasemonkey腳本。你認爲有可能做我想做的事情嗎?

謝謝

+0

這是否最終爲您工作? – newenglander 2012-06-14 14:07:39

回答

2

是的,我相信這是可能的。 Greasemonkey存儲的配置值存儲在每個腳本,因此您需要確保您的單一 Greasemonkey腳本針對這兩個頁面運行,即使它們位於不同的URL。 (More info here

你可能會想一個大的if/else塊瓜分要在源頁面和目標頁面上運行的代碼,像這樣的東西:

if (window.location.hostname.match(/source-site\.com/) { 
    //attach to the form fields and make them call GM_setValue() on every change 
} else if (window.location.hostname.match(/target-site\.com/) { 
    //use GM_getValue() to pull in the data you stored from the source site 
} 

這似乎比腳本在一個頁面上執行並嘗試訪問其他打開的窗口的DOM(我不知道是可能的)更容易。