放置一个假加载屏幕,给人一种计算需要时间的印象
Putting a fake loading screen to give the impression that the calculation take time?
我正在编写我的第一个Javascript程序。我是这个编程语言的新手,所以如果你能保持答案的简单,我会非常感激,这样我就能理解它们。
这是我的代码:http://jsfiddle.net/7Tfwh/1/
function temp(form) {
var umsatz = parseFloat(form.umsatz.value, 10);
var ebit = parseFloat(form.ebit.value, 10);
umsatzrendite = (ebit / umsatz)*100 + "%";
form.umsatzrendite.value = umsatzrendite;
};
它所做的就是从一个表格中取出两个变量,将它们分开,然后返回结果。我想使用更多的变量,但计算会很快完成。因此,我想给用户的印象是,计算非常复杂,需要几秒钟才能公布结果。
因此,我想在用户按下"计算"按钮后,当然在他得到结果之前,使用加载屏幕3到5秒。
如果有人能给我指正确的方向就好了。
谢谢。
George
Ninjaedit:顺便说一句,我不知道Jsfidle版本为什么不能正常工作。在我的本地环境中,计算是正确的。
最简单的方法是;当用户点击按钮时:
- 显示一个包含加载图像或类似图像的div(提示:使用jQuery库)
- 启动计时器
- 计时器结束时:
- 隐藏div
- 执行上述功能
按下"计算"按钮后,您可以在2到3秒后使用window.setTimeout
函数调用"计算数学运算"。
您可以在以下位置找到更多信息:http://www.w3schools.com/js/js_timing.asp
如果不清楚,请告诉我。可以给你举同样的例子。你也可以在链接上自己试试。
我告诉你我是如何解决的。
我试过用window.setTimeout…
出于某种原因,我无法将其与javascript一起使用。。。只制造了问题。。。因此,我使用了jquery中的.delay选项。。。感谢上帝,jquery如此简单。。。
在这里你可以看到我的结果:
http://phptest.klea.internetshop.cc
}另一种方法是使用jQuery库来添加简单的效果。您应该更改背景颜色、不透明度或其他值,以获得计算或动态负载的效果。
// change the background color to pink over 2 seconds
// ...then change it back to white
$(form).animate({backgroundColor : "pink"}, 2000).delay(2000).animate({backgroundColor : "white"}, 2000);
- Windows8应用程序(html&Javascript):从图片库(除了文件选择器)显示图像的另一种方式
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 有没有一种方法可以防止img get请求使用css或js发生
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- 有没有一种方法可以在控制台关闭的情况下让console.log()在IE中记录消息
- 有没有一种方法可以仅使用HTML/CSS来隐藏基于特定值的数据单元格
- 有没有一种方法可以从URL跟踪请求的域
- 有没有一种方法可以列出Ember.Object的所有绑定
- 有没有一种方法可以获得three.js的最小/lite版本
- 有没有一种方法可以在没有文档或jQuery的情况下使用javascript解码html实体
- ES6是否引入了一种机制来生成块范围的函数语句(而不是表达式)
- 有没有一种方法可以从Javascript检测特定的应用程序是否安装在(AndroidiOS)设备上
- 只能存储一种类型的对象的数组
- 在HTML/JavaScript中,有没有一种方法可以在图像开始加载时知道图像的最终布局尺寸
- 有没有一种方法可以让javascript不计算特定的字符
- 有没有一种方法可以计算只有js(没有Node.js)的doc、docx、pdf页面
- 一种通过网站连接到计算机上托管的程序的方法
- jquery如何计算具有特定类型父节点的一种类型的所有xml节点
- 放置一个假加载屏幕,给人一种计算需要时间的印象