Javascript 关闭lightbox有时在输入时比onblur()触发更快

Javascript 关闭lightbox有时在输入时比onblur()触发更快,javascript,jquery,Javascript,Jquery,我正在输入上运行此代码on blur()。它工作得很好,只要您不点击任何可以将您带到不同页面或关闭加载ajax函数和输入的lightbox(覆盖中的div)的内容,因为ajax脚本有可能会被中止。我明白,如果关闭浏览器窗口,可能很难确保在blur()上保存内容,,但有没有办法在关闭lightbox(或转到其他页面)之前等待ajax请求(和任何链接单击)完成 我想另一个选择是在input()上使用,,/以及在blur()上使用,,但是我收到了很多ajax请求,需要开始节流,对吗?我的lightbo

我正在输入上运行此代码
on blur()
。它工作得很好,只要您不点击任何可以将您带到不同页面或关闭加载ajax函数和输入的lightbox(覆盖中的div)的内容,因为ajax脚本有可能会被中止。我明白,如果关闭浏览器窗口,可能很难确保在blur()上保存内容
,但有没有办法在关闭lightbox(或转到其他页面)之前等待ajax请求(和任何链接单击)完成

我想另一个选择是在input()上使用
,/以及在blur()上使用
,但是我收到了很多ajax请求,需要开始节流,对吗?我的lightbox插件(fancybox)有一个名为beforeClose的事件,我可以在其中运行一些东西来检查是否发送了ajax请求吗

如果我想得不对,请告诉我。我知道async false并不被推荐,但也许我需要什么

$.ajax({
    type: "POST",
    dataType: "json",
    url: "?a=ajax",
    data: { value: $self.val() },
    error: handleError
}).done(function(data) {
    if( data == "0" )
    {
        // no success
    }
    else
    {
        // success
    }
});