jquery – 在离开页面之前立即调用AJAX

前端之家收集整理的这篇文章主要介绍了jquery – 在离开页面之前立即调用AJAX前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在用户点击指向另一个页面链接时执行简单的 AJAX get请求. AJAX调用是完成还是会因为用户离开启动AJAX请求的页面而停止?我并不关心get请求的响应.

有什么想法或想法吗?

解决方法

如果您只想将数据发送到服务器而不关心共鸣,则可能需要尝试信标请求.这基本上是一个火灾和忘记的事情,像这样:
function sendInfo(something) {
     var beacon = new Image();
         beacon.src = '/somepath/script.pl?info=' + something;
}

$('a[href^=http]').bind('click',function(e) {
    sendInfo(escape(e.href));
});

好吧,这种技术不会阻止所以它可能是一个竞争条件,无论浏览器是否会触发请求(我没有为此目的测试它).为了确保请求将被触发,请调用这样的ajax调用

$('a[href^=http]').bind('click',function(e) {
    $.get('/somepath/script.pl',{info: escape(e.href)},function(data) {
        location.href = e.href;
    });

    return false;
});

猜你在找的jQuery相关文章