如何通过 JavaScript 使页面保持假加载状态?
我有一个页面,我将其设置为 $('body').hide(),直到它完成加载 AJAX 请求,然后将页面设置为 $('body').show()。同时(大约 2 秒)页面保持空白,浏览器图标停止加载,然后显示内容或重定向到另一个页面(根据返回的 AJAX 变量)。
有什么方法可以让浏览器保持在加载状态,即使它没有加载任何东西?只是看起来它仍在加载内容。
我已经尝试过创建类似的东西:
while(page_loading())
var l = 1;
但是浏览器崩溃了。我怎样才能强制这种“假”状态?
编辑:
抱歉,我之前忘记提及:我想像往常一样保持页面空白,不加载任何 gif 或类似内容,而是强制浏览器处于加载状态。当浏览器加载页面时,浏览器选项卡上会不断出现一个加载图标或状态栏上会出现一条消息。我知道这些特定的状态不能直接用 javascript 更改,所以我认为有一种方法可以使用一些无限循环 HTML 请求或类似的东西来使浏览器保持在这种加载状态。如果我设置“光标:WAITING”,浏览器选项卡仍会更改为“完成状态”。
最佳答案
按照yourdeveloperfriend的建议使用加载动画可能是正确的方法。但是,您可以使用cursor: wait
来近似页面加载:
html,
body {
cursor: wait;
height: 100%;
width: 100%;
margin: 0;
padding: 0;
background: #555;
color: white;
text-align: center;
}
setTimeout(function unwait() {
document.body.style.cursor = 'default';
document.body.innerHTML = 'Loaded.';
}, 3000);
显然,这只是一个演示。在我看来,选项卡图标应该单独保留,因为某些浏览器会缓存它们第一次看到的内容并永远保留该图标。
关于javascript - 如何使页面保持假加载状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15142408/