Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何减少XMLHttpRequest时间延迟?_Javascript_Ajax_Xmlhttprequest - Fatal编程技术网

Javascript 如何减少XMLHttpRequest时间延迟?

Javascript 如何减少XMLHttpRequest时间延迟?,javascript,ajax,xmlhttprequest,Javascript,Ajax,Xmlhttprequest,我在注册表单上使用XMLHttpRequest来查看他们输入的用户名是否已经被使用。脚本运行良好,但我注意到在发出请求时有一些时间延迟-发送请求后,网页会冻结一秒钟 有没有一种方法可以让请求“在后台”,而不会在前端造成任何延迟?我喜欢Twitter的实现:它在搜索数据库时显示一个旋转的沙漏图标。如何获得类似的结果?您希望使用异步XHR——目前您正在执行同步请求,因此页面必须冻结,直到加载完成。异步XHR调用加载状态更新时提供的callbck函数 如果记忆有用,你只需要做 xhr.onready

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


有没有一种方法可以让请求“在后台”,而不会在前端造成任何延迟?我喜欢Twitter的实现:它在搜索数据库时显示一个旋转的沙漏图标。如何获得类似的结果?

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

如果记忆有用,你只需要做

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

其中
true
使请求异步。

您想使用异步XHR——目前您正在执行同步请求,因此页面必须冻结,直到加载完成。异步XHR调用加载状态更新时提供的callbck函数

如果记忆有用,你只需要做

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

其中
true
使请求异步。

您需要指定XMLHttpRequest在后台异步运行。然后,您可以提供回调函数,以便用户可以继续浏览,直到操作完成


许多网站只是在等待操作返回时显示一个动画GIF,这可能会给用户一种你正在寻找的印象,因为它看起来好像发生了什么事情。您可以在轻松地设计和下载其中一个AJAX旋转指示器。

您需要指定XMLHttpRequest在后台异步运行。然后,您可以提供回调函数,以便用户可以继续浏览,直到操作完成

许多网站只是在等待操作返回时显示一个动画GIF,这可能会给用户一种你正在寻找的印象,因为它看起来好像发生了什么事情。您可以在轻松地设计和下载其中一个AJAX旋转指示器。

Errr否,默认情况下,XHR是同步的,它在等待加载时会阻塞。对——我只是在您评论时修复了这个问题。谢谢。不,默认情况下,XHR是同步的,它在等待加载时会阻塞。对——我只是在您评论时修复了这个问题。谢谢