我想制作进度条,中间是文本,右边是关闭按钮。 此代码有效,但当我单击“x”关闭程序时,执行“hide()”函数(正确)和“showSomething()”函数(不正确)。我怎样才能在点击“x”时只执行“hide()”函数?
演示: https://jsfiddle.net/9razu5r1/
.progress {
text-align: center;
width: 200px;
margin: 15px auto;
}
.progress-value {
position: absolute;
right: 0;
left: 0;
}
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<div class="progress" id=prog>
<span class="progress-value" onclick="showSomething()">Something 50%</span>
<div id="x" style="float: right;" onclick="hide('prog')">x</div>
<div class="progress-bar" style="width: 50%;"></div>
</div>
最佳答案
使用event.stopPropagation()它将停止冒泡到“较低”层。
它看起来也像是 this question 的重复
关于javascript - Html、css、js - 进度条,中间有文本,右边有关闭按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39348990/