我有一個表單,並且我必須注意用戶在退出頁面時有alert(),而表單中的數據尚未發送。跨瀏覽器Onunload和Onbeforeunload? (特別是歌劇11)
我讀過歌劇有很多這方面的問題。那就是Opera 11,因爲我只需要考慮最後一個版本。
同樣,警報應該在刷新,關閉標籤或關閉整個瀏覽器時顯示。 將事件直接設置到<form>
元素上將是很好的,該元素將在任何導致破壞此元素的任何元素上啓動。
我有一個表單,並且我必須注意用戶在退出頁面時有alert(),而表單中的數據尚未發送。跨瀏覽器Onunload和Onbeforeunload? (特別是歌劇11)
我讀過歌劇有很多這方面的問題。那就是Opera 11,因爲我只需要考慮最後一個版本。
同樣,警報應該在刷新,關閉標籤或關閉整個瀏覽器時顯示。 將事件直接設置到<form>
元素上將是很好的,該元素將在任何導致破壞此元素的任何元素上啓動。
Opera目前還不支持onbeforeunload。 Opera的onunload支持不完整 - 例如,關閉選項卡或關閉Opera時不會觸發。據我所知,雖然你可以使用onunload來顯示警告,如果用戶點擊鏈接從未保存的表單導航離開頁面,當unload事件觸發時,你無法阻止導航的發生。
我在這裏要做的是聽取onbeforeunload事件,使其在其他瀏覽器中工作,並等待Opera趕上。無論是在Opera 12還是13或15中,我都不知道,但是當onbeforeunload實現時,它將像其他瀏覽器一樣工作。
Disable Close不會幫你,因爲Opera目前不支持window.onbeforeunload。它將在未來的某個版本中得到支持。目前,Opera 11沒有實現它。
JQuery框架只是一個精簡的Javascript語言,所以它完全取決於您使用的瀏覽器,這裏沒有什麼魔力。
自從Opera 15開始支持onbeforeunload!
[歌劇onbeforeunload]的可能重複(http://stackoverflow.com/questions/390260/onbeforeunload-in-opera) – Bergi 2013-03-26 22:53:08