仅当隐藏的div(显示:无)处于活动状态时,我才需要运行脚本。
当按下“ radio button”(单选按钮)时,使用伪造的加载器显示“ div1”,并在3秒钟后显示另一个名为“ my_div”的div。
但是,如果用户不按“单选按钮”,则仍会出现“ my_div”上的随机文本。
我需要解决此问题,如果用户按下单选按钮,则仅显示此随机文本“ my_div”。因此,当用户使用伪造的加载程序按“单选按钮”显示“ div1”,并在3秒钟后显示另一个div(已经工作)时,如果不按该按钮,则什么也不会发生(不要运行随机脚本)。
工作: https://jsfiddle.net/zto6gv1c/3/
这是我的项目:
function show1() {
document.getElementById('div1').style.display = 'none';
}
function show2() {
document.getElementById('div1').style.display = 'block';
}
var r_text = new Array();
r_text[0] = "Disponível";
r_text[1] = "Indisponível";
r_text[2] = "Disponível";
r_text[3] = "Indisponível";
r_text[4] = "Disponível";
r_text[5] = "Disponível";
r_text[6] = "Indisponível";
r_text[7] = "Disponível";
r_text[8] = "Indisponível";
r_text[9] = "Disponível";
r_text[10] = "Indisponível";
r_text[11] = "Disponível";
var i = Math.floor(7 * Math.random())
document.write(r_text[i]);
window.onload = function() //executes when the page finishes loading
{
setTimeout(func1, 3000); //sets a timer which calls function func1 after 2,000 milliseconds = 2 secs.
};
function func1() {
document.getElementById("my_div").className = "show";
}
.hide {
display: none;
}
p {
font-weight: bold;
}
.show {
display: block;
position: absolute;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Deseja chegar a disponibilidade do produto?</p>
<input type="radio" name="tab" value="igottwo" onclick="show2();" /> Sim
<div id="div1" class="hide">CHECANDO</div>
<div id="my_div" class="hide"></div>
答案 0 :(得分:0)
好吗,何时类隐藏不显示任何内容-您要运行其他代码?
您可以通过以下方式查看可见性:
var isVisible = document.getElementsByClassName("hide")[0].style.display == "block";
if(isVisisble){
this thing is hiden
}else{
this thing is not hiden
}
我们使用getElementsByClassName是因为您将其放在名称为“ hide”的类上-仅存在这些元素之一,因此我们使用[0]获取第一个(唯一的)元素,然后使用样式。显示以检查值。