open不開啟新視窗 window
- IT科技
- 關注:6.36K次
1、window.open不開啟新視窗的原因:
某些瀏覽器為了安全起見,可能會阻止window.open開啟的連結url。
2、解決方法:
需要使用者進行瀏覽器設定允許彈新頁,讓使用者設定瀏覽器是極不可取的做法,可以利用超連結開啟的url,利用超連結開啟的url是不會被攔截的。
3、window.open的用法容易忽視的細節:
window.open方法有三個引數:
window.open(url, [name], [configuration])
其中:
url, 為要新開啟頁面的url
name,為新開啟視窗的名字,可以通過此名字獲取該視窗物件
configuration,為新開啟視窗的一些配置項,比如是否有選單欄、滾動條、長高等等資訊
例如,新開啟一個沒有選單欄、標題欄、工具欄,但是有滾動條、狀態列、位址列且可伸縮視窗的方法呼叫如下:
window.open("index.html","newWindow","menubar=0,scrollbars=1, resizable=1,status=1,titlebar=0,toolbar=0,location=1");
容易忽略的地方就是:
新開啟視窗名字可以是自定義的值,此外還可以是以下幾個值,與超連結a的target屬性值相同
視窗name值 | 描述 |
_blank | 預設的,在新視窗開啟連結的url |
_self | 在當前視窗開啟連結url |
_parent | 在父視窗開啟連結url |
_top | 在頂級視窗開啟url |
framename | 在指定的框架中開啟連結url |
4、window.open開啟新視窗還是開啟新標籤頁:
呼叫window.open是開啟新視窗,還是開啟新標籤頁,其實沒有什麼要緊關係,但是有些需求在這方面有很強的意願時,就得區分一下,具體的開啟什麼要根據具體情況來定。
window.open(url)或者window.open(url, name),其中name為_blank
標準瀏覽器、IE9+是新標籤開啟連結url
ie6-8是新視窗開啟連結url
window.open(url, name),其中name為非_blank的其他4個值
此時會會在指定視窗或者frame開啟連結url
window.open(url, name, configration)
只要配置了configration,所有瀏覽器都是新視窗開啟連結url
- 文章版權屬於文章作者所有,轉載請註明 https://shqsg.com/dianzi/eq3m92.html