2011-04-26 206 views
1

有什麼辦法可以在不接收提示的情況下使用js完全關閉瀏覽器窗口? 我的意思是,用戶沒有打開一個彈出窗口或其他任何JS關閉窗口

+6

我當然希望不會 – 2011-04-26 14:15:53

+2

Downvoter:反對投票是對於不是問題明確或不具建設性;儘管我不同意控制我的瀏覽器窗口的想法,但這個問題非常明確且可以回答。 – 2011-04-26 14:20:12

+1

如果這是JavaScript的功能,不少人會因爲看到一些隨機網站關閉他們的所有選項卡而變得惱人。 – 2011-04-26 14:36:11

回答

3

不。基本上,腳本只能打開一個腳本打開的窗口。試圖這樣做(使用命令window.close())導致錯誤Scripts may not close windows that were not opened by script.

有一個很好的理由。如果任何腳本可以關閉任何窗口,惡意代碼可以通過在後臺窗口中加載虛假頁面,然後關閉主窗口,輕鬆地將虛假頁面替換爲合法頁面。

一般來說,這是不好的做法,嘗試和通常是用戶的域中的任何行動力控制。這包括像滾動條,整體的字體大小,確認窗口的事情(打印,保存,關閉),以及尺寸和打開窗口的狀態等

1

簡單的答案是NO瀏覽器窗口。通常,所有瀏覽器都有配置允許JavaScript代碼執行的機制 - 關閉窗口和/或調整大小是其中之一,並且默認情況下設置爲提示(關閉)並拒絕調整大小。因此,除非用戶特別配置了不同的級別,否則您將無法避免提示。

0

關閉窗口的唯一代碼是window.close()。對於其他任何事情,你都需要像插件那樣優越的優先權。

0

window.close()將關閉當前標籤頁,如果它是瀏覽器的最後一個標籤頁,則可能會關閉整個瀏覽器窗口。

+3

這隻有在腳本打開標籤頁/窗口時纔是正確的。 – 2011-04-26 14:21:08

+0

很高興知道。謝謝,克里斯。 – 2011-04-27 02:14:43