Ich arbeite an einem Websystem, das überprüfen muss, ob es online ist. Ich habe der Benutzertabelle ein Online-Feld hinzugefügt. Es gibt eine Schaltfl?che zum Beenden auf der Website Wenn Sie auf die Schaltfl?che klicken, um den Vorgang normal zu beenden, wird das Online-Feld der Benutzertabelle auf 0 gesetzt. Das L?schen der Sitzung und das Verlassen der Website ist kein Problem, es ist jedoch nicht m?glich, den Online-Status des Benutzers in ?Offline“ zu ?ndern, nachdem der Benutzer die Website direkt geschlossen hat Fenster oder Browser. Ich versuche derzeit, JS zu verwenden, um zu überwachen, ob der Benutzer das Fenster oder den Browser schlie?t, und fügt dann dem Schlie?ereignis eine Exit-Methode hinzu. Einige im Internet gefundene JS-Codes zum überwachen des Schlie?ens des Browsers sind wie folgt:
<script type="text/javascript">
window.onbeforeunload = function(e) {
e = e || window.event;
var msg = "您確定要離開此頁面嗎?";
// IE
e.cancelBubble = true;
e.returnValue = msg;
// Firefox
if(e.stopPropagation) {
e.stopPropagation();
e.preventDefault();
}
// Chrome / Safari
return msg;
};
</script>
Methoden wie onbeforeunload oder onload k?nnen die Aktionen zum Schlie?en des Browsers/Aktualisieren der Seite/Springen zur Seite nicht bestimmen. Bitte geben Sie mir einen Rat 學習是最好的投資!
每間隔1s通知服務期該客戶端在線,在服務端確認,如果失去客戶端聯(lián)系,則確認離線。
setInterval(function(){
$.ajax({
type: "GET",
url: "server url",
data: {isOnline:1},
dataType: "json",
success: function(data){
//客戶端在線
}
});
}, 1000);
window.onbeforeunload = function () {
window.event.returnValue = '';
};