我们已经收到了一个ajax请求, 30秒,然后将用户发送到不同的页面。在此期间,我们当然会显示ajaxy spinner指示符,但浏览器也可能“出现”卡住,因为浏览器客户端实际上没有工作或显示它自己的加载消息。使用Ajax浏览器“繁忙状态”
有没有一种简单的方法可以告诉所有主流浏览器使用JS命令来查看忙?
感谢, 乍得
我们已经收到了一个ajax请求, 30秒,然后将用户发送到不同的页面。在此期间,我们当然会显示ajaxy spinner指示符,但浏览器也可能“出现”卡住,因为浏览器客户端实际上没有工作或显示它自己的加载消息。使用Ajax浏览器“繁忙状态”
有没有一种简单的方法可以告诉所有主流浏览器使用JS命令来查看忙?
感谢, 乍得
在这种情况下你需要使用AJAX吗?您可以将其发布/放到另一个页面,其全部目的是处理请求,并且一旦完成重定向到目标页面?
您仍然可以使用一些JS来弹出微调器,并且由于您正在发布到另一个页面,浏览器将显示其“原生忙指示器”。浏览器不应该显示中间页面,一旦请求被处理,响应就会被重定向到目的地。
jQuery的?
$('html').ajaxStart(function() { $('#busyindicator').show(); });
$('html').ajaxStop(function() { $('#busyindicator').hide(); });
但也许我不理解你的问题。 “看起来很忙”是什么意思?你的意思是让浏览器的进度条或原生忙指示器处于活动状态吗?不要以为你可以这么做...
您可以将body
的CSS cursor
属性设置为“等待”。有了雏形,这将是这样的:
$(document.body).setStyle({cursor: 'wait'});
我相信这是jQuery代码,有人请纠正我,如果我错了,因为我不是一个jQuery专家:
$("body").css("cursor", "wait");
这将使整个页面在Windows上显示沙漏鼠标光标,在Mac OS上显示旋转的观察光标。
很酷 - 是的,这可能是获得原生指标的最佳方式 - 实际上它可以通过一个帖子进行工作。 谢谢我会改变一些事情。 – Chad 2009-08-09 21:41:13