当用户离开页面时,我试图运行一个 php 脚本。这是我目前正在使用的:
function unload(){
var ajaxRequest; // The variable that makes Ajax possible!
try{
// Opera 8.0+, Firefox, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e){
// Internet Explorer Browsers
try{
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try{
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e){
// Something went wrong
window.location = "unsupported.html";
return false;
}
}
}
ajaxRequest.open("GET", "ajax/cancelMatch.php", true);
ajaxRequest.send(null);
}
通过FireBug,看起来是在调用ajaxRequest对象的open函数,但是PHP没有运行!这与它在页面卸载时调用它的事实有关吗?
另外,我发现了一个名为 onbeforeunload 的事件,但我不知道如何让它工作,如果它仍然可用的话。