2013-02-28 54 views
0

如何通过javascript将页面保持为假加载状态?我有一个页面,我设置为$('body')。hide(),直到它完成加载AJAX请求,然后页面设置为$('body')。show()。与此同时(大约2秒)页面保持空白,浏览器图标停止加载,然后显示内容或重定向到另一页面(根据返回的AJAX变量)。如何将页面保持为假加载状态

有什么办法可以使浏览器保持加载状态,即使它没有加载任何东西?只是似乎它仍然在加载内容。

我已经试图建立类似:

while(page_loading()) 
    var l = 1; 

但随后的浏览器崩溃。我如何强制这个“假”的状态?

编辑:

对不起,我忘了提前:我想保持页面的空白像往常一样,没有任何加载GIF或类似的东西,但迫使浏览器上加载状态。浏览器加载页面时,会出现一个加载图标,该图标会一直显示在浏览器选项卡上或状态栏上的消息中。我知道这些特定的状态不能直接用javascript来改变,所以我认为有一种方法可以使浏览器保持这种加载状态,使用一些无限循环的HTML请求或类似的东西。如果我设置“光标:等待”,则浏览器选项卡仍将变为“完成状态”。

+0

'html,body {cursor:wait; }' – 2013-02-28 18:01:30

+0

你要么是令人难以置信的误导,要么是不好。 – 2013-02-28 18:55:50

+0

误导?我只想在Ajax仍在执行时保持浏览器处于繁忙状态。 – user1410363 2013-03-01 12:18:48

回答

1

使用加载动画作为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); 

http://jsfiddle.net/8cxA7/

显然,这只是一个演示。在我看来,选项卡图标应该单独保留,因为一些浏览器会缓存他们首次看到并保存在该图标上的内容以获得宝贵的生命。

+0

谢谢,“光标:等待”是我发现的“忙碌状态” 。 谢谢! – user1410363 2013-03-04 20:16:35

1

处理这个问题的标准方法是创建一个出现和消失的加载gif。您可以create your own gif并下载它。然后,当页面开始加载:$("#mygif").show();,当它完成,$("#mygif").hide();

相关问题