javascript - Javascript/HTML - 隐藏 DIV 直到单击按钮
问题描述
我想隐藏 div “状态”,直到单击按钮。如何从我的 js 中实现这一点?
function start(al) {
var bar = document.getElementById('progressBar');
var status = document.getElementById('status');
status.innerHTML = al + "%";
bar.value = al;
al++;
var sim = setTimeout("start(" + al + ")", 1);
if (al == 5500) {
status.innerHTML = "100%";
bar.value = 5500;
clearTimeout(sim);
var finalMessage = document.getElementById('finalMessage');
finalMessage.innerHTML = "Process is complete";
}
}
<div class="status">
<progress id="progressBar" value="0" max="5500" style="width:100%;"></progress>
<span id="status"></span>
<br>
<center>Generating event...</center>
</div>
<center><button style="margin-top: 20px;" class="btn btn-success" onclick='start(0)'>Submit</button></center>
解决方案
status
最初隐藏您的课程。
.status {
display: none;
}
- 按下按钮时,使用 JavaScript取消隐藏类
status
document.querySelector(".status").style.display = "block";
您的代码中的一些改进:
- 尽量避免 和 使用相同的
class
名称id
。
在您的代码中,status
是class和id。
我已将其更改为status-of-progress-bar
以下代码。
finalMessage
未在您的 HTML 中用作 ID,因此添加到<center>
标签中
注意:现在不推荐使用center标签,未来很多浏览器可能不支持它。
- 使用
.disabled
属性,我们可以在用户按下一次按钮时禁用该按钮,这样用户就不能再次按下该按钮。
function start(al) {
document.querySelector(".btn").disabled = true;
document.querySelector(".status").style.display = "block";
var bar = document.getElementById('progressBar');
var status = document.getElementById('status-of-progress-bar');
status.innerHTML = al + "%";
bar.value = al;
al++;
var sim = setTimeout("start(" + al + ")", 1);
if (al == 5500) {
status.innerHTML = "100%";
bar.value = 5500;
clearTimeout(sim);
var finalMessage = document.getElementById('finalMessage');
finalMessage.innerHTML = "Process is complete";
}
}
.status {
display: none;
}
<div class="status">
<progress id="progressBar" value="0" max="5500" style="width:100%;"></progress>
<span id="status-of-progress-bar"></span>
<br>
<center id="finalMessage">Generating event...</center>
</div>
<center><button style="margin-top: 20px;" class="btn btn-success" onclick='start(0)'>Submit</button></center>
推荐阅读
- javascript - 如何从Javascript中的函数访问变量
- vba - Excel 数据透视表过滤器链接到单元格
- javascript - 你不应该使用
或 withRouter() 外部 动态渲染组件时 - javascript - 日期格式错误
- c++ - 读取进程内存多级指针(DLL 注入)
- python - 无法从 Python 中同一目录中的另一个文件导入类
- python - Python:如何使用来自不同类的属性
- java - LocalDateTime.now() 在 Windows 和 Mac 机器上具有不同级别的精度
- c# - Linq ForEach 在 mvc 中删除
- python - Python 中的 Frame.quit 用法