想請問為甚麼在本機測試網頁 執行 window.close()正常,但是在虛擬機測試時會發生:
Scripts may close only the windows that were opened by them.
上網查有說是因為安全性的關係,所以無法透過腳本直接關閉,也有測試過
window.opener= null;
window.open("","_self");
window.close();
但是還是出現警告,想問各位前輩有沒有其他建議或替代方法可以透過js執行類似window.close()。
目前比較無解。
我以前的做法可以給你參考。
只是這個做法會改很多東西。
我當時是將所有的a連結跟href有關的指令。
全攔下來後。統一用 window.open 來去做觸發啟用。
這樣子下 window.close 就不會再出現警告。
但這招還是需要有一個主頁來處理。而這個主頁也是無法關閉的。
因為得要由主頁去呼叫關閉。
但至少我另開的視窗就不再有這個問題。
早期有一招也是可以關閉。也就是你用的
window.open("","_self");
先將頁面切到一個空頁後。再做關閉處理。
或是切到一個只有close命令的頁面。
但這招已經被改掉不能再用了。(不過ie好像還可以這樣用)