2008-12-10 30 views

回答

10

您的JavaScript代碼只能關閉一個窗口,而不需要通過window.open()打開的確認信息。這是一種有意的安全防範措施,因爲在網頁上運行的腳本不擁有該窗口,並通過關閉它放棄該窗口中的瀏覽歷史記錄。

的解決方法是有彈出要關閉與window.open擺在首位,或者告訴你的用戶修改自己的瀏覽器安全設置窗口中的「歡迎頁面」或其他某種頁面讓你的應用程序關閉他們的窗戶。

+0

該網頁是由用戶點擊應用程序發送的電子郵件中的鏈接而生成的。 – 2008-12-10 20:25:11

+1

您可以嘗試使鏈接如Click me。但我懷疑許多郵件客戶端將運行JavaScript。不幸的是,我認爲你可能不走運。 – Tmdean 2008-12-10 20:30:38

+0

你說得對,我運氣不好。我必須實施不同的解決方案。 – 2008-12-10 22:51:59

7

這是一個黑客。

爲IE電話:

window.open('close.html', '_self'); 

然後close.html所有你需要的是:

<script>window.close();</script> 

因爲這基本上是打開一個彈出窗口,在同一個命名的窗口,當「新」窗口打開,它有一個「開啓者」,因此被允許關閉。

20

在打開的彈出窗口中輸入以下內容

var objWin = window.self; 
objWin.open('','_self',''); 
objWin.close();