2012-09-18 37 views
3

我想使用JavaScript來識別瀏覽器標籤(在我的域名上)。 我的意思是,如果用戶打開我的網站幾個選項卡,並只在一個頁面上提交網頁表單,我只想通知此頁面,即使用戶從此頁面移動。 它應該是最大的跨瀏覽器解決方案。如何識別瀏覽器選項卡?

P.S.其中一個可能的解決方案是使用「window.name」屬性,但我不想使用它,因爲其他人可以使用它。

P.S-2:我發現多一個可能的解決方案:在使用sessionStorage。它支持FF3.5 +,Chrome4 +,Safari4 +,Opera10.5 +和IE8 +。 Oooohhh,我需要IE7 !!!!

預先感謝您!

+1

你是什麼意思?如果選項卡發出請求,則響應已經轉到該選項卡。 –

+0

這是我沒有嘗試的,但:服務器無法將數據推送到瀏覽器,請求必須從瀏覽器發佈,但您可以使用**本地存儲**(如果可用)跟蹤多個頁面(_secondary_頁面不會向服務器發送任何AJAX請求)。 –

+0

戴夫牛頓,我們使用cometd,並有一個延遲。 – DioNNiS

回答

0

使用sessionStorage。它支持FF3.5 +,Chrome4 +,Safari4 +,Opera10.5 +和IE8 +。

對於IE7使用 「window.name」 屬性。

1

我不認爲這可以做到。打開的每個瀏覽器標籤基本上就像一個新的瀏覽器實例。就像用戶打開另一個瀏覽器一樣。一個標籤根據設計對其他標籤一無所知。這是應該的。你能想象一下,如果一個網站開發者可以向他們的頁面添加代碼以「查看」你在瀏覽器中打開的其他網站的影響,這會帶來什麼影響?

1

window.name是您可以用於此目的的唯一持久數據元素,如您的要求所述。

我想通知僅此頁,即使從這個頁面用戶移動。

這是不可能的。一旦用戶離開頁面,您將失去對該頁面的控制。您無法推送到頁面,它需要從該頁面發出服務器請求,即使它是ajax。