2012-01-18 55 views
3

我使用Javascript代碼在.NET 4.0的Web應用程序爲IE8:JavaScript彈出瀏覽器選項卡將不會獲得焦點

ClientScript.RegisterStartupScript(this.Page.GetType(), "popupOpener", "var popup=window.open('Report.aspx');popup.focus();", true); 

這將打開一個新的瀏覽器選項卡中的.aspx頁。

但是,它並沒有給出選項卡的焦點,我非常希望這樣做。有誰知道如何做到這一點?

+0

你見過這樣的:http://stackoverflow.com/questions/726761/javascript-open-in-a -new-window-not-tab? – xtrem 2012-01-18 23:06:45

+0

@Moussa:這個問題似乎涉及新文檔是在新標籤中打開還是作爲新窗口打開。除此之外,只要JS有一個窗口處理程序,它應該仍然能夠控制焦點(除其他外)。 – buley 2012-01-18 23:09:00

+0

按鈕創建/格式化報告文檔,然後將其存儲在會話變量中。然後這個javascript打開新的aspx窗口,報告文檔被加載到查看器中。 – Ted 2012-01-18 23:24:41

回答

0

並非所有的瀏覽器都支持focus,我相信there are some bugs即使是那些做。

嘗試在將焦點給予焦點之前模糊窗口。這是奇怪的,但過去一直在爲人們工作。

一般:

popup_handle.blur(); 
popup_handle.focus(); 

至於適用於您的代碼:

ClientScript.RegisterStartupScript(this.Page.GetType(), "popupOpener", "var popup=window.open('Report.aspx');popup.blur();popup.focus();", true); 
+0

呃......同樣的行爲。新選項卡打開但沒有獲得重點。 – Ted 2012-01-18 23:18:51

+0

是否有可能實際上沒有窗口處理程序。 console.log在你登錄時說什麼? – buley 2012-01-18 23:20:20

+0

對不起,我不熟悉那個功能... – Ted 2012-01-18 23:22:52

相關問題