我想知道如何在脚本执行期间在用户屏幕上显示启动画面(如gif或jpeg文件)。
感谢您的帮助。
答案 0 :(得分:6)
诀窍是在使用长时间运行的JS之后启用启动画面后让渲染重新绘制。为此,您可以使用setTimeout方法。
例如,假设您的启动显示位于显示样式为none的div中,则可以使用此功能运行代码: -
function splash(splashDivId, fn)
{
var splashDiv = document.getElementById(splashDivId)
splashDiv.style.display = "block";
setTimeout(function() {
fn()
splashDiv.style.display = "none";
}, 100);
}
用法: -
splash("mySplashDiv", longRunner)
function longRunner()
{
//This may take a while
}
答案 1 :(得分:1)
我不知道现有的脚本,但我可以告诉你如何实现启动画面。
我建议使用JQuery,因为这是我选择的JS库,但其他人也很好。
首先,在JS方法中,您需要显示弹出窗口。您可以使用JQuery Dialog widget来完成此任务。在同一方法中,进行ajax调用。 Ajax本质上是异步的,因此在调用完成时设置一个方法,并在调用错误时设置。在这两种方法中,首先应该隐藏模态弹出窗口。
现在,还有最后一招 - 您希望在意外情况下优雅地失败,例如失去连接。因此,当您显示对话框时,您还需要设置javascript timeout来处理任何错误情况,以便不会永久显示对话框。该方法应该检查对话是否可见,如果是,则隐藏它(并且可能显示错误消息)。
我希望有足够的信息让你前进。即使您不熟悉JavaScript,这也是一个值得学习的好项目,因为它不应该太难。
答案 2 :(得分:1)
我使用jQuery blockUI插件来完成你描述的内容。看看这些示例,它是高度可定制的,占用空间很小,可以通过简单的小调用来创造奇迹。