2009-02-10 47 views
1

我正在編寫一個ASP.NET應用程序,用於跟蹤用戶的分數和信息(這是一個 培訓應用程序)到訪問數據庫,如果有人直接關閉瀏覽器,我想顯示一條警報消息。 我的問題是,我不能使用卸載事件,因爲當我按下任何ASP.NET按鈕的時候發生卸載事件。我應該使用什麼事件,這將適用於IE和FF? 我想處理事件瀏覽器關閉(X)。如何知道瀏覽器何時關閉?

+0

哇 - 很好的清理RichB – annakata 2009-02-10 12:12:38

+0

@annakata:謝謝。似乎這是我所做的一切。人們甚至不嘗試似乎。 – GEOCHET 2009-02-10 12:28:27

回答

1

你應該做的是讓窗口卸載事件處理程序註銷按鈕單擊事件處理程序調用相同的註銷方法。你不需要停止用戶,並要求他們按下按鈕,你的按鈕應該是另一種做同樣事情的方式。

另外:你有沒有考慮過SCORM

0

不知道你知道你想在這裏做什麼。 ;-)

是否要防止用戶完全關閉瀏覽器,直到trainig中的某個點?如果是這樣,你有沒有考慮使用模態和最大化窗口?你應該能夠最大化沒有標題欄,按鈕和菜單的窗口。或者,如果您只想跟蹤進度,分數或類似情況,那麼您可以使用JavaScript通過瀏覽器處理的Cookie。請記住,這將使數據保存在學生的一臺機器上。

如果你只是想警告他即將離開訓練場的用戶,可以使用onbeforeunload

0

我想其他人充分回答您的具體問題,但Tooney提出了一些很好的意見。展開這些。你目前在哪裏維護你的狀態?分數是存儲在cookie中,在服務器端會話中還是在數據庫中逐頁保存。

假設這不是一個便宜和快樂的解決方案,那麼我建議你考慮逐頁保存結果,因爲它可以最大限度地減少因過早退出(無論是設計還是事故)而導致的信息損失。當然,你需要一個過程來清理不完整的訓練課程。

您仍然可以使用onbeforeunload函數來捕獲用戶出口,但個人而言,我不喜歡重複檢查用戶操作的UI。

祝你好運。

相關問題