簡體   English   中英

在 Chrome 中使用目標“_blank”打開 window.open

[英]window.open with target "_blank" in Chrome

我有一個小的 javascript 函數,它在新選項卡中打開一個 url:

function RedirectToPage(status) {
   var url = 'ObjectEditor.aspx?Status=' + status;
   window.open(url , '_blank');
}

這在通過單擊按鈕調用客戶端時始終有效,即使在 chrome 中也是如此。 但是在 Chrome 中,當它通過使用從服務器端(!)調用它時它將不起作用

ScriptManager.RegisterClientScriptBlock()

在 Firefox 和 IE 中,它在新選項卡中打開 url,但 chrome 在新窗口中打開 url。 有什么辦法可以強制 Chrome 在新標簽頁中打開它?

這是chrome中的設置。 您無法控制瀏覽器如何解釋目標_blank

"_blank" 不保證是新的選項卡或窗口。 每個瀏覽器的實現方式不同。

但是,您可以將任何東西放入目標中。 我通常只說“_tab”,而我所知道的每個瀏覽器都只是在新標簽頁中打開它。

請注意,這意味着它是一個命名目標,因此如果您嘗試打開 2 個 URL,它們將使用相同的選項卡。

window.open(skey, "_blank", "toolbar=1, scrollbars=1, resizable=1, width=" + 1015 + ", height=" + 800);

您不能這樣做,因為您無法控制 Chrome 打開其窗口的方式

正如 Dennis 所說,您無法控制瀏覽器選擇如何處理 target=_blank。

如果您想知道不一致的行為,可能是彈出窗口阻止。 許多瀏覽器會禁止打開新窗口,但允許在鼠標單擊事件的最終結果中生成新窗口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM