2秒后自动隐藏div [英] auto hide div after 2 seconds

查看:95
本文介绍了2秒后自动隐藏div的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我做了一个代码,只显示一个div
并在x秒后自动隐藏div
它在第一次工作后只有
......... ...........
这里是代码

 < script type =text / JavaScript的> 

函数showonlyone(thechosenone){
var newboxes = document.getElementsByTagName(div);
for(var x = 0; x name = newboxes [x] .getAttribute(name);
if(name =='newboxes'){
if(newboxes [x] .id == thechosenone){
newboxes [x] .style.display ='block';
}
else {
newboxes [x] .style.display ='none';



$ b function hidediv(arg){
document.getElementById(arg).style.display ='none';
}
setTimeout(hidediv('newboxes1'),4000);
setTimeout(hidediv('newboxes2'),4000);
setTimeout(hidediv('newboxes3'),4000);
< / script>
< div style =float:left; padding-left:5px; padding-right:5px; >
< div style =border:1px solid blue; background-color:#99CCFF; padding:5px;>
< a id =myHeader1href =javascript:showonlyone('newboxes1'); >崩< / A>
< / div>
< div name =newboxesid =newboxes1style =border:1px solid black; background-color:#CCCCCC; display:none; padding:5px;> Div#1< / div> ;
< / div>
< div style =float:left; padding-left:5px; padding-right:5px; >
< div style =border:1px solid blue; background-color:#99CCFF; padding:5px;>
< a id =myHeader2href =javascript:showonlyone('newboxes2'); >崩< / A>
< / div>
< div name =newboxesid =newboxes2style =border:1px solid black; background-color:#CCCCCC; display:none; padding:5px;> Div#2< / div
< / div>
< div style =float:left; padding-left:5px; padding-right:5px; >
< div style =border:1px solid blue; background-color:#99CCFF; padding:5px;>
< / div>
< div name =newboxesid =newboxes3style =border:1px solid black; background-color:#CCCCCC; display:none; padding:5px;> Div#3< / div
< / div>


解决方案使用 setInterval 代替 setTimeout



例:

  setInterval(function(){hidediv('newboxes1');},4000); 
setInterval(function(){hidediv('newboxes2');},4000);
setInterval(function(){hidediv('newboxes3');},4000);


i made a code to only show one div and auto hide the div after x seconds it worked for the first time only after that .................... here is the code

<script type="text/javascript">

function showonlyone(thechosenone) {
      var newboxes = document.getElementsByTagName("div");
            for(var x=0; x<newboxes.length; x++) {
                  name = newboxes[x].getAttribute("name");
                  if (name == 'newboxes') {
                        if (newboxes[x].id == thechosenone) {
                        newboxes[x].style.display = 'block';
                  }
                  else {
                        newboxes[x].style.display = 'none';
                  }
            }
      }
}
function hidediv(arg) {
    document.getElementById(arg).style.display = 'none';
}
setTimeout("hidediv('newboxes1')", 4000);
setTimeout("hidediv('newboxes2')", 4000);
setTimeout("hidediv('newboxes3')", 4000);
</script>
<div style="float:left;padding-left:5px;padding-right:5px;" >
         <div style="border: 1px solid blue; background-color: #99CCFF; padding: 5px;">
            <a id="myHeader1" href="javascript:showonlyone('newboxes1');" >collapse</a>
         </div>
         <div name="newboxes" id="newboxes1" style="border: 1px solid black; background-color: #CCCCCC; display: none;padding: 5px;">Div #1</div>
    </div>
    <div style="float:left;padding-left:5px;padding-right:5px;" >
         <div style="border: 1px solid blue; background-color: #99CCFF; padding: 5px;">
            <a id="myHeader2" href="javascript:showonlyone('newboxes2');" >collapse</a>
         </div>
         <div name="newboxes" id="newboxes2" style="border: 1px solid black; background-color: #CCCCCC; display: none;padding: 5px;">Div #2</div
    </div>
    <div style="float:left;padding-left:5px;padding-right:5px;" >
         <div style="border: 1px solid blue; background-color: #99CCFF; padding: 5px;">
            <a id="myHeader3" href="javascript:showonlyone('newboxes3');" >collapse</a>
         </div>
         <div name="newboxes" id="newboxes3" style="border: 1px solid black; background-color: #CCCCCC; display: none;padding: 5px;">Div #3</div
     </div>

解决方案

use setInterval instead of setTimeout

ex:

setInterval(function(){ hidediv('newboxes1');}, 4000);
setInterval(function(){ hidediv('newboxes2');}, 4000);
setInterval(function(){ hidediv('newboxes3');}, 4000);

这篇关于2秒后自动隐藏div的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆