如何减少XMLHttpRequest时滞?

1 javascript ajax xmlhttprequest

我在注册表单上使用XMLHttpRequest来查看他们输入的用户名是否已被占用.脚本运行正常,但我注意到在发出请求时有一些时间延迟 - 网页在发送请求后冻结了一秒钟.

有没有办法让"在后台"请求并且不会导致前端出现任何延迟?我喜欢Twitter的实现:它在搜索数据库时显示一个旋转的沙漏图标.我如何得到类似的东西?

oll*_*iej 7

您希望使用异步XHR - 当前您正在执行同步请求,因此页面必须冻结,直到加载完成.异步XHR调用您提供的callbck函数以及加载状态更新.

如果记忆服务你只需要做

 xhr.onreadystatechange = function() { 
     if (xhr.readyState === 4 && xhr.status === 200) loadFinished();
 }
 xhr.open(requestType, url,  true);
Run Code Online (Sandbox Code Playgroud)

哪里true使请求异步.