In puro JS il metodo abort() è piuttosto semplice da usare…
codice:
<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Documento HTML</title>
<script type="text/javascript">
var oAJAXCall = new (function () {
var
bReading = false, oReq = new XMLHttpRequest();
function reqListener () {
bReading = false;
alert(this.responseText);
}
this.abortisci = function () {
if (!bReading) {
alert("Non ci sono chiamate in corso da poter abortire!");
return;
}
oReq.abort();
bReading = false;
alert("Ho abortito la chiamata AJAX!");
};
this.leggi = function () {
if (bReading) {
alert("C'\u00E8 gi\u00E0 una chiamata in corso!");
return;
}
alert("Sto per leggere lo script pesante\u2026 Premi \"a\" per abortire.");
bReading = true;
oReq.open("get", "scriptPesante.php?id1=1&id2=2", true);
oReq.send();
};
oReq.onload = reqListener;
})();
/* "r" per iniziare la lettura, "a" per abortirla */
document.onkeypress = function (oPssEvt) {
var oEvt = oPssEvt || /* IE */ window.event;
switch (oEvt.charCode) {
case 114: /* "r" */
oAJAXCall.leggi();
break;
case 97: /* "a" */
oAJAXCall.abortisci();
break;
}
};
</script>
</head>
<body>
<p>Premi "r" per leggere lo script pesante, "a" per abortire.</p>
</body>
</html>