1

我正在编写我的第一个 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;
};

它所做的只是从一个表格中取出 2 个变量并将它们分开并返回结果。我想使用更多变量,但计算会很快完成。因此,我想给用户一个印象,即计算是一个非常复杂的计算,需要几秒钟才能发布结果。

因此,我想在用户按下“计算”按钮之后,当然在他得到结果之前,使用加载屏幕 3 到 5 秒。

如果有人能指出我正确的方向,那就太好了。

谢谢你。

乔治

Ninjaedit:顺便说一句,我不知道为什么 Jsfiddle-Version 不能正常工作。在我的本地环境中,计算正确完成。

4

4 回答 4

1

最简单的方法是;当用户点击按钮时:

  1. 显示包含加载图像等的 div (提示:使用jQuery 库
  2. 启动计时器
  3. 当计时器完成时:
    • 隐藏 div
    • 执行上述功能
于 2013-06-25T14:56:37.623 回答
0

} 另一种方法是使用 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);
于 2013-06-25T15:01:16.963 回答
0

按下计算按钮后,您可以window.setTimeout在 2 到 3 秒后使用函数调用计算数学运算。

您可以在以下位置找到更多信息: http ://www.w3schools.com/js/js_timing.asp

如果不清楚,请告诉我。可以为您提供相同的工作示例。您也可以在链接上自己尝试。

于 2013-06-25T14:57:21.597 回答
0

我告诉你我是怎么解决的。

我用window.setTimeout尝试了这个东西......

出于某种原因,我无法将它与我的 javascript 一起使用......只会出现问题......因此我使用了 jquery 的 .delay 选项......感谢上帝,jquery 是如此简单......

在这里你可以看到我的结果:

http://phptest.klea.internetshop.cc

于 2013-06-25T18:35:33.927 回答