【问题标题】:Having trouble setting timeout to infinity无法将超时设置为无穷大
【发布时间】:2018-10-13 23:47:00
【问题描述】:

我有一个在点击时运行的微调器 gif 动画。我希望这个 gif 一直运行到函数完成并移动到下一页。有人能帮忙吗?我曾尝试将时间更改为 10000,但它没有奏效,因为它仍然不够长。

见下方代码

function show() {
  document.getElementById("myDiv").style.display = "block";
  setTimeout("hide()", 5000); // 5 seconds
}

function hide() {
  document.getElementById("myDiv").style.display = "none";
}
<input type="submit" onclick="show()">

<div id="myDiv" style="display:none"><img id="myImage" src="Spinner.gif"></div><br>

【问题讨论】:

  • 所以你应该将 hide()'ing 作为“函数”中的最后一条语句
  • 旋转器 gif 被隐藏,直到用户点击提交,然后旋转器显示 5 秒,但我希望这个时间更长
  • 如果您要导航到新页面,为什么还需要隐藏微调器?
  • 旁注:应该写成setTimeout(hide, 5000);,不带引号和括号

标签: javascript html gif


【解决方案1】:

我认为你不应该使用 setTimeout。只需在您等待的函数末尾调用 hide() 函数

【讨论】:

  • 谢谢,我能够消除超时,这很有效
猜你喜欢
  • 2021-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-08-12
  • 2011-07-23
  • 1970-01-01
  • 2012-02-15
  • 2021-02-09
相关资源
最近更新 更多