显示/隐藏图像按钮3秒延迟
Show/Hide image button 3 second delay
这是html部分。我在这里所做的是,当用户单击按钮一次时,将调用showIMG函数来显示图像。
<!DOCTYPE html>
<!-- showHide.html
Uses showHide.js
Illustrates visibility control of elements
-->
<html lang = "en">
<head>
<title> Visibility control </title>
<meta charset = "utf-8" />
<script type = "text/javascript" src = "showHide.js" >
</script>
</head>
<body>
<form action = "">
<div id = "saturn" style = "position: relative;
visibility: visible;">
<img src = "../images/saturn.png"
alt = "(Pictures of Saturn)" />
</div>
<p>
<br />
<input type = "button" value = "Toggle Saturn"
onclick = "flipImag()" />
</p>
</form>
</body>
</html>
javascript文件
// showHide.js
// Illustrates visibility control of elements
// The event handler function to toggle the visibility
// of the images of Saturn
function flipImag() {
dom = document.getElementById("saturn").style;
// Flip the visibility adjective to whatever it is not now
if (dom.visibility == "visible")
dom.visibility = "hidden";
else
dom.visibility = "visible";
}
我想在三秒钟内点击一个按钮两次,然后图像消失,当你点击按钮一次,图像出现在屏幕上。我意识到我必须使用切换功能并将其与计时器合并,但我不确定如何做到这一点。
第一次点击设置超时,第二次点击清除超时。
function checkClick(){
if(window.flippingimage) clearTimeout(window.flippingimage);
else window.flippingimage = setTimeout(3000, flipImag);
}
然后将此函数放在按钮的onclick事件上。
编辑将您的代码更改为以下代码:
function flipImag() {
dom = document.getElementById("saturn").style;
// Flip the visibility adjective to whatever it is not now
if (dom.visibility == "visible")
dom.visibility = "hidden";
else
dom.visibility = "visible";
}
function checkClick(){
if(window.flippingimage) clearTimeout(window.flippingimage);
else window.flippingimage = setTimeout(3000, flipImag);
}
和HTML:
<html lang = "en">
<head>
<title> Visibility control </title>
<meta charset = "utf-8" />
<script type = "text/javascript" src = "showHide.js" >
</script>
</head>
<body>
<form action = "">
<div id = "saturn" style = "position: relative;
visibility: visible;">
<img src = "../images/saturn.png"
alt = "(Pictures of Saturn)" />
</div>
<p>
<br />
<input type = "button" value = "Toggle Saturn"
onclick = "checkClick()" />
</p>
</form>
</body>
</html>
相关文章:
- 在单击下一个按钮之前,在JavaScript代码中添加5秒的延迟
- 使用JQueryMobile时加载页面延迟2-3秒
- 在jQuery脚本中放置15秒的延迟
- 在菜单下拉条上应用2秒延迟
- 我们如何在下拉子菜单中设置5秒的时间或延迟
- 您如何使其延迟并且直到 16 秒过去时才显示
- 如何使用 JQuery 添加延迟?(让它等待 5 秒再继续)
- 如何延迟 AJAX 响应秒数
- JS自动播放,但有5秒的延迟
- 延迟循环 1 秒
- 我将如何为隐藏 JavaScript 函数添加 1 秒的延迟
- 通过 jquery 在 2 秒后延迟显示
- 如何为该函数添加3秒延迟
- 为什么javascript在输入时立即发送事件,而不是在5秒延迟后发送
- 我如何添加3秒延迟到这个函数
- Javascript在菜单项上没有延迟,但是悬停离开菜单时有5秒延迟
- 显示前的几秒延迟:无
- 显示/隐藏图像按钮3秒延迟
- Javascript DOMContentLoaded有一个神秘的5-10秒延迟
- 仅当鼠标悬停在 1 秒延迟后时显示图像预览