2016年11月4日 星期五

[JavaScript] window.open 在edge裡的name 內容

很久沒有記錄工作的記事了
先前有想要把blog搬到wordPress
想說要來自己架一個blog
還試用了AWS
但後來想了想還是先記錄在這裡較方便

anyway
今天再看一個blog
在一個已有fancyBox的WEB上要再開一個window.open
(因為fancyBox無法再開啟一個fancyBox,所以只好用window.open)
問題來了
edge卻沒有辦法成功開啟

老實說對edge不是很熟,它既不是IE,但和chrome和FF好像又有一點不同
後來開會跟同事討論
發現在edge裡面,window.open name的參數不能寫成self

但個人覺得蠻奇怪的是window.open本來name就必須要是一個string
本來的寫法為
window.open("XXXXURL",self,.....);
這樣的寫法在chrome和FF都開的起來,但在edge就會掛掉

後來改成
window.open("XXXXURL","window name",.....);
就work了

但後來查了 一下
https://msdn.microsoft.com/en-us/library/ms536651(v=vs.85).aspx
其實直接寫成window.open("XXXXURL","_blank",.....);就可以了
_blank代表新開一個視窗,如果是 _self則是指自己本身,但本身又是fancyBox,這樣會有問題


最後還是follow先前的作法,統一改成window name
所以edge應該說它蠻嚴謹的嗎?


在此紀錄一下


沒有留言:

張貼留言