您的位置:首頁技術文章
文章詳情頁

Chrome,Javascript,window。在新標簽頁中打開

瀏覽:191日期:2024-04-16 14:08:40
如何解決Chrome,Javascript,window。在新標簽頁中打開?

您不能直接控制它,因為它是由Internet Explorer用戶控制的選項。

使用Window.open使用不同的窗口名稱打開頁面將在新的瀏覽器窗口(如彈出窗口)中打開,或者在用戶配置的瀏覽器中打開。

更詳細的解釋:

在現代瀏覽器中,window.open將在新選項卡中打開,而不是彈出窗口。

您可以通過在第3個參數中指定選項來強制瀏覽器使用新窗口(“彈出窗口”)

如果window.open調用不是用戶啟動的事件的一部分,它將在新窗口中打開。

“用戶啟動的事件”不必具有相同的函數調用–但是它必須起源于用戶單擊所調用的函數

如果用戶啟動的事件委托或推遲了一個函數調用(例如,在未綁定到click事件的事件偵聽器或委托中,或通過使用setTimeout進行委托),則它將失去其狀態為“用戶發起”

某些彈出窗口阻止程序將允許通過用戶啟動的事件打開窗口,但不允許以其他方式打開的窗口。

如果任何彈出窗口被阻止,則阻止程序通常允許的(通過用戶啟動的事件)有時也會被阻止。一些例子…

強制在新的瀏覽器實例(而不是新的選項卡)中打開窗口:

window.open(’page.PHP’, ’’, ’width=1000’);

即使以下內容調用了另一個函數,也將其視為用戶啟動的事件:

function o(){ window.open(’page.PHP’);}$(’button’).addEvent(’click’, o);

由于setTimeout推遲了以下事件,因此以下事件不屬于用戶啟動的事件:

function g(){ setTimeout(o, 1);}function o(){ window.open(’page.PHP’);}$(’button’).addEvent(’click’, g);解決方法

在chrome中,這會在新標簽頁中打開:

<button onclick='window.open(’newpage.html’,’_blank’)' />

這會在新窗口中打開(但我也想在新標簽頁中打開它:

<script language='javascript'> window.open(’newpage.html’,’_blank’);</script>

這可行嗎?

標簽: JavaScript
相關文章:
国产综合久久一区二区三区