내 응용 프로그램은 온라인/오프라인 상태로 사용자를 설정할 수 있어야합니다.window.onbeforeunload 항상 발사하지?
나는이 문제를 window.onbeforeunload를 사용하여 사용자가 페이지를 떠나는시기를 확인함으로써 해결했습니다.
문제는 아래의 코드가 항상 실행되는 것은 아니므로 일부 사용자가 페이지를 떠날 때 온라인 상태 인 것입니다.
이 내 현재 코드입니다 :
window.onbeforeunload = function (event) {
$.ajax({
type: 'GET',
url: './changeStatus.php?cid=' + ccID + '&status=0',
contentType: "application/json",
dataType: 'json',
cache: false,
async: false,
success: function (data) {},
error: function (e) {
//console.log(e);
}
});
return;
};
난 항상 이 강제 할 수있는 방법 어떤 아이디어를 실행하세요? (모든 브라우저에서)
모든 주요 브라우저에서 지원되어야합니다. 정확히 발사하지 않을 때입니까? – adeneo
간혹 IE에서는 – Laine
IE가 도입 된 것 같습니다. IE4 이후까지 지원됩니다. 발포하지 않는 경우에 대한 세부 정보를 추가해야합니다. 다른 한편, IE에서 문제는 일반적으로 페이지를 닫기 전에 요청을 보낼 정도로 아약스 함수가 빠르지 않을 것입니다. 캐시를 비활성화하여 지연 시키더라도 (btw는 작동하지 않습니다.) – adeneo