簡體   English   中英

JavaScript + onunload事件

[英]JavaScript + onunload event

我想觸發onunload事件來執行一些清理操作,我有多個選項卡(導航欄)顯示了指向不同網頁的多個鏈接,我的問題是,即使在其他頁面中,我的卸載功能也位於某些標簽中其他jsp被解雇。 請幫助解決此問題,我希望在用戶關閉該頁面中的瀏覽器時調用卸載功能。

我不確定您如何使onunload事件正常工作。...使用onunload事件發現的問題是頁面卸載后將其觸發。 這意味着無法再執行JavaScript,因為頁面已被卸載。

您應該考慮使用onbeforeunload事件。 該事件有點獨特,因為如果處理該事件的函數返回任何內容,則會顯示一個彈出窗口,詢問用戶是否要繼續操作。 因此,請確保您的函數不返回任何內容。 關於onbeforeunload事件要注意的另一件事是,Opera目前不支持該事件(但是Safari,FireFox和Internet Explorer支持)。

每次卸載頁面時,都會執行onbeforeunload和onunload事件。 如果頁面上的控件將該頁面提交給服務器代碼,則該頁面將被卸載並執行JavaScript。

如果您不希望在頁面上的控件將JavaScript提交到服務器時執行JavaScript,則必須實施一些檢查以查看是否應執行代碼。

這很簡單,向頁面添加一個JavaScript布爾值,並將此布爾值設置為true的函數。 確保頁面中回發到服務器代碼的每個元素在提交頁面之前將此布爾值都設置為true。 在onbeforeunload事件中檢查此布爾值,以查看是否應執行清理代碼。

希望這可以幫助,

-弗林尼

似乎已在全局范圍內創建了卸載功能。 嘗試僅將該功能放在您要執行的頁面上。

您有框架集頁面嗎? 您想在他們離開框架集時得到通知嗎? 在框架集上添加onbeforeunload。 我不知道清理的含義,但是您無法在跨瀏覽器安全卸載期間發送XHR

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM