2013-04-23 84 views
1

我在同一個域名上有兩個瀏覽器窗口,js彈出窗口到主窗口之間的通信

一個是主窗口,另一個是小彈出窗口。

我發現這一點:How to Communicate between two browser windows?

但是,問題是彈出式的事件由第三方軟件 ... 打開本地計算機上,我不希望回到與服務器通信,和讀取狀態在主窗口中,緩慢的時間問題..

我希望從彈出直接通過JS傳遞一些數據到主窗口(後隨即關閉彈出窗口)。

該事件是由本地電話軟件撥號器使用參數打開的VOIP新收入呼叫,主窗口是一個瀏覽器CRM,需要通過JS在同一頁面上顯示來電狀態,類似於AJAX [僅限於本地]。

PS:

也許有是Windows應用程序的瀏覽器之間進行通信的方式?所以第三方軟件將數據發送到它與應用交流會在窗口 (或Firefox擴展 - 但我寧願不安裝更多附加元件)的需要...

,我應該採取什麼辦法?你認爲解決方案是什麼?

感謝配發。 ;)

+0

我想我會跟dailer-> bridge application-> addon [通過套接字] - > js通信.... 撥號程序將執行命令而不是彈出,執行並將參數發送到本地應用程序我會寫,通過套接字與本地主機通信與firefox插件進行通信,並與參數調用alocal js ...複雜但快速,乾淨。 – itai 2013-04-23 13:06:10

回答

1

您是否嘗試過使用window.opener指父窗口?

+0

不,我會嘗試,window.opener將返回窗口的父母,但它有趣的知道,如果它有一個父母,導致第三方軟件打開它..不是'我'尋找的父',這是一種就像2個獨立的瀏覽器窗口通信... – itai 2013-04-23 12:14:53

+0

對,因爲我不知道第三方軟件是如何打開窗口(可能已經在主瀏覽器窗口的範圍內執行了一個命令),這是值得說的;) – plalx 2013-04-23 12:31:01

4

如果一個瀏覽器不開拓其他的瀏覽器,有沒有辦法讓兩個瀏覽器通過window.opener交談。

什麼,你可以嘗試是將數據存儲到localstorage並有更改Windows民調localStorage的。

+0

本地存儲是一個解決方案... – itai 2013-04-23 12:27:32

+0

我可以操縱本地存儲使用C++的Windows應用程序Firefox的插件通信?以避免打開和關閉迷你彈出... thanx – itai 2013-04-23 12:34:41

+0

我不知道,我不編碼Firefox附加。 – epascarello 2013-04-23 13:29:05