Chrome,Javascript,window在新標簽頁中打開
您不能直接控制它,因為它是由Internet Explorer用戶控制的選項。
使用Window.open使用不同的窗口名稱打開頁面將在新的瀏覽器窗口(如彈出窗口)中打開,或者在用戶配置的瀏覽器中打開。
更詳細的解釋:
在現(xiàn)代瀏覽器中,window.open將在新選項卡中打開,而不是彈出窗口。
您可以通過在第3個參數(shù)中指定選項來強制瀏覽器使用新窗口(“彈出窗口”)
如果window.open調用不是用戶啟動的事件的一部分,它將在新窗口中打開。
“用戶啟動的事件”不必具有相同的函數(shù)調用–但是它必須起源于用戶單擊所調用的函數(shù)
如果用戶啟動的事件委托或推遲了一個函數(shù)調用(例如,在未綁定到click事件的事件偵聽器或委托中,或通過使用setTimeout進行委托),則它將失去其狀態(tài)為“用戶發(fā)起”
某些彈出窗口阻止程序將允許通過用戶啟動的事件打開窗口,但不允許以其他方式打開的窗口。
如果任何彈出窗口被阻止,則阻止程序通常允許的(通過用戶啟動的事件)有時也會被阻止。一些例子…
強制在新的瀏覽器實例(而不是新的選項卡)中打開窗口:
window.open(’page.PHP’, ’’, ’width=1000’);
即使以下內容調用了另一個函數(shù),也將其視為用戶啟動的事件:
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>
這可行嗎?
相關文章:
1. javascript - Web微信聊天輸入框解決方案2. javascript - es6將類數(shù)組轉化成數(shù)組的問題3. javascript - 為什么這個點擊事件需要點擊兩次才有效果4. javascript - react 中綁定事件和阻止事件冒泡5. javascript - history.replaceState()無法改變query參數(shù)6. javascript - 移動端textarea不能上下滑動,該怎么解決?7. javascript - 有沒有什么好的圖片懶加載的插件,需要包含監(jiān)聽頁面滾動高度,然后再加載的功能8. javascript - 音頻加載問題9. javascript - 為什么form表單提交沒有跨域問題,但ajax提交有跨域問題?10. javascript - Ajax加載Json時,移動端頁面向左上角縮小一截兒,加載完成后才正常顯示,這該如何解決?
