首頁  >  問答  >  主體

javascript - 如何在網頁關閉前,透過ajax把訪問行為送回後台? ?

我想在網頁關閉時,把採集到的訪問資訊ajax到伺服器,現有程式碼大概如下,實測不可行。

window.onbeforeunload=function(e){    
    visit_end=new Date();
    visit_long=((visit_end.getTime()-visit_start.getTime())/1000).toFixed(1);
    //此处省略以上采集的访问信息

    ajax_visit_info(); //在关闭网页时,调用ajax函数发送到后台。
    //return confirm('你真的要关闭吗?');     //不想加上这个,看起来不友好。    
}

實測,後台壓根沒有接收到…!蛋!痛!

請問有什麼方法? ?在不影響友善的情況下…

天蓬老师天蓬老师2663 天前867

全部回覆(3)我來回復

  • 滿天的星座

    滿天的星座2017-07-05 11:02:43

    onbeforeunload 是不太可靠的,有些瀏覽器不支持,而且不支援回呼裡的非同步任務。

    Service workers需要現代瀏覽器支援

    所以還是基於其他事件觸發吧

    回覆
    0
  • PHP中文网

    PHP中文网2017-07-05 11:02:43

    只能 Service Worker 了

    回覆
    0
  • 扔个三星炸死你

    扔个三星炸死你2017-07-05 11:02:43

    這個應該就是數據上報吧,你可以看一下百度上報的實作

    回覆
    0
  • 取消回覆