0

我有 jsp page1,它是从托管在 tomcat1 上的 application1 进行的。我正在从我的浏览器(通过页面)向不同 web 服务器(node.js)上的不同应用程序(跨域请求)发出异步跨站点 ajax 请求。发生了什么直到我没有得到响应(我在 3-4 分钟后得到),我的 firefox/chrome 客户端选项卡继续显示处理(如计时器继续在选项卡上旋转,左下角显示等待服务器名称)这不会发生在 IE 上。由于这是异步调用,我不希望用户感觉某些东西正在服务器上处理。

有没有办法阻止计时器在 Firefox/chrome 的浏览器选项卡上不断旋转的行为?

4

1 回答 1

1

您可以使用以下任何方法来隐藏 chrome/firefox 的“加载”栏(希望它会起作用):

  1. 在不同的线程中进行 Ajax 调用(阅读有关Web_worker 的信息)。(这是 HTML5 标准,不适用于旧浏览器)

  2. 如果您将 ajax 调用作为页面 onload() 的一部分启动,请尝试将其放在 setTimeout() 或 setInterval() 中。

  3. 尝试将您的请求提交到隐藏的 iframe(将隐藏的表单和 iframe 嵌入到您的页面中,将您的请求参数添加为隐藏变量,将表单的目标设置为该 iframe 的名称,将表单的操作设置为您的 ajax 请求的 url,提交表单)。这可能不起作用,因为它会加载隐藏页面(但值得尝试)。

于 2012-11-19T11:26:24.233 回答