[英]How to know when a user has left the page and refreshed the page
我想在用戶離開頁面之前進行AJAX調用(所以基本上在離開頁面之前和刷新頁面之前)?
如何才能做到這一點。 我試圖用jQuery搜索一些東西,但沒有得到任何東西。
我嘗試使用以下代碼 -
window.onbeforeunload(function(){alert('before unload');});
但是離開頁面(關閉瀏覽器選項卡)或刷新頁面時,警報框永遠不會出現。
如何實現這一目標?
你應該嘗試從jquery 卸載() :
$(window).unload(function(){
//Do your call
alert('before unload');
});
oro你可以使用beforeunload事件。 你應該測試一下,因為瀏覽器傾向於以不同的方式改變這些東西。 取自jquery文檔:
卸載事件的確切處理因瀏覽器的版本而異。 例如,某些版本的Firefox會在跟蹤鏈接時觸發事件,但不會在窗口關閉時觸發。 在實際使用中,應該在所有支持的瀏覽器上測試行為,並與專有的beforeunload事件進行對比。
$(window).unload(function() {
alert('Visitor left page');
});
關於ajax調用,您可以執行此操作,但必須將async
設置為false
。
$.ajax({
async: false,
...
});
你的代碼完全錯了。 unbeforeunload用於詢問此人是否真的要離開頁面。 你需要卸載。
window.onunload = function() {
// Make your AJAX call
}
更好地使用jQuery.unload()方法
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.