Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript-循环3个函数,每个函数之间有延迟_Javascript_Html_Css - Fatal编程技术网

Javascript-循环3个函数,每个函数之间有延迟

Javascript-循环3个函数,每个函数之间有延迟,javascript,html,css,Javascript,Html,Css,请不要用jQuery 功能1导致图像出现(CSS3动画) 然后,函数2在此幻灯片底部向上滑动标题(CSS3动画) 然后,函数3向下滑动标题(CSS3动画) 然后这个过程需要重复 我的问题:如何将这些函数放入一个连续循环中,每个函数之间都有延迟。 HTML代码 <div id="slider"> <!-- Sildes img_noshow means opacity:0;display:none; img_

请不要用jQuery

功能1导致图像出现(CSS3动画)

然后,函数2在此幻灯片底部向上滑动标题(CSS3动画)

然后,函数3向下滑动标题(CSS3动画)

然后这个过程需要重复

我的问题:如何将这些函数放入一个连续循环中,每个函数之间都有延迟。

HTML代码

<div id="slider">

        <!-- Sildes 
             img_noshow means opacity:0;display:none;
             img_show means opacity:1;
             an_movein means a fade in effect CSS3
        -->
        <img id="img_1" class='img_show' src="/images/c1.jpg" style='width:960px;'/>
        <img id="img_2" class='img_noshow' src="/images/c2.jpg" style='width:960px;'/>
        <img id="img_3" class='img_noshow' src="/images/c3.jpg" style='width:960px;'/>
        <img id="img_4" class='img_noshow' src="/images/c4.jpg" style='width:960px;'/>
        <div id="slider_caption">
        <p id="slider_p1" class="an_slideup"><a href="#one">This is the text going with the slide 1.</a></p>
        <p id="slider_p2" class="img_noshow"><a href="#one">This is the text going with the slide 2.</a></p>
        <p id="slider_p3" class="img_noshow"><a href="#one">This is the text going with the slide 3.</a></p>
        <p id="slider_p4" class="img_noshow"><a href="#one">This is the text going with the slide 4.</a></p>
        </div>
      </div>

JAVASCRIPT代码

slide = 1;//global
function nextMove(){
  slide++;
  if(slide > 4){
    slide = 1;
  }
  //img_noshow means opacity:0;display:none;
  //img_show means opacity:1;
  //an_movein means a fade in effect
  for(i=1;i<5;i++){

    document.getElementById('slider_p'+i).className = 'img_noshow';
    if(i != slide){
      document.getElementById('img_'+i).className = 'img_noshow';
    }
    else{
      document.getElementById('img_'+i).className = 'an_movein';
    }
  }
}


function nextMove2(){
  document.getElementById('slider_p'+slide).className = 'an_slideup';
}

function nextMove3(){
  document.getElementById('slider_p'+slide).className = 'an_slidedown';
}
slide=1//全球的
函数nextMove(){
幻灯片++;
如果(幻灯片>4){
滑动=1;
}
//img_noshow表示不透明度:0;显示:无;
//img_显示表示不透明度:1;
//_movein表示淡入效果

对于(i=1;i使用每个函数末尾的
setTimeout
方法在延迟后启动下一个函数:

function nextMove(){
  //...all dat code
  window.setTimeout(nextMove2, 500);
}

function nextMove2(){
  document.getElementById('slider_p'+slide).className = 'an_slideup';
  window.setTimeout(nextMove3, 500);
}

function nextMove3(){
  document.getElementById('slider_p'+slide).className = 'an_slidedown';
  window.setTimeout(nextMove, 500);
}

在每个函数结束时使用
setTimeout
方法,在延迟后启动下一个函数:

function nextMove(){
  //...all dat code
  window.setTimeout(nextMove2, 500);
}

function nextMove2(){
  document.getElementById('slider_p'+slide).className = 'an_slideup';
  window.setTimeout(nextMove3, 500);
}

function nextMove3(){
  document.getElementById('slider_p'+slide).className = 'an_slidedown';
  window.setTimeout(nextMove, 500);
}

在每个函数结束时使用
setTimeout
方法,在延迟后启动下一个函数:

function nextMove(){
  //...all dat code
  window.setTimeout(nextMove2, 500);
}

function nextMove2(){
  document.getElementById('slider_p'+slide).className = 'an_slideup';
  window.setTimeout(nextMove3, 500);
}

function nextMove3(){
  document.getElementById('slider_p'+slide).className = 'an_slidedown';
  window.setTimeout(nextMove, 500);
}

在每个函数结束时使用
setTimeout
方法,在延迟后启动下一个函数:

function nextMove(){
  //...all dat code
  window.setTimeout(nextMove2, 500);
}

function nextMove2(){
  document.getElementById('slider_p'+slide).className = 'an_slideup';
  window.setTimeout(nextMove3, 500);
}

function nextMove3(){
  document.getElementById('slider_p'+slide).className = 'an_slidedown';
  window.setTimeout(nextMove, 500);
}

最直接的例子是:

setInterval(function() {
  nextMove();
  setTimeout(function() {
    nextMove2();
    setTimeout(nextMove3, 5000)
  }, 5000);
}, 15000); 

因此,每15秒启动一次循环。执行第一个函数,等待5秒,执行第二个函数,等待5秒,然后执行第三个函数(因此,在此之后,您再次等待~5秒,等待第一个函数)。

最字面的示例:

setInterval(function() {
  nextMove();
  setTimeout(function() {
    nextMove2();
    setTimeout(nextMove3, 5000)
  }, 5000);
}, 15000); 

因此,每15秒启动一次循环。执行第一个函数,等待5秒,执行第二个函数,等待5秒,然后执行第三个函数(因此,在此之后,您再次等待~5秒,等待第一个函数)。

最字面的示例:

setInterval(function() {
  nextMove();
  setTimeout(function() {
    nextMove2();
    setTimeout(nextMove3, 5000)
  }, 5000);
}, 15000); 

因此,每15秒启动一次循环。执行第一个函数,等待5秒,执行第二个函数,等待5秒,然后执行第三个函数(因此,在此之后,您再次等待~5秒,等待第一个函数)。

最字面的示例:

setInterval(function() {
  nextMove();
  setTimeout(function() {
    nextMove2();
    setTimeout(nextMove3, 5000)
  }, 5000);
}, 15000); 

因此,每15秒启动一次循环。执行第一个函数,等待5秒,执行第二个函数,等待5秒,然后执行第三个函数(在这之后,你再等待~5秒,等待第一个)。

Pls.没有“文本”字。键入完整的字。你在说什么?@flukyspore:他说的是写“Pls”而不是“请”。当你写一个问题时,努力让它易于阅读,这被认为是一种良好的网络礼仪。使用txtspk让你看起来更关心写这个问题需要多长时间,而不是让它成为一个愉快的阅读。然而,一个问题中的一个txtspk单词几乎不值得评论,这只是为了通知你这个问题在一张网络礼仪上,以备将来参考。@Guffa Thx解释。请不要“文本”字。键入全字。你在说什么?@flukyspore:他说的是写“请”而不是“请”。当你写一个问题时,努力让它易于阅读,这被认为是一种良好的网络礼仪。使用txtspk让你看起来更关心写这个问题需要多长时间,而不是让它成为一个愉快的阅读。然而,一个问题中的一个txtspk单词几乎不值得评论,这只是为了通知你这个问题在一张网络礼仪上,以备将来参考。@Guffa Thx解释。请不要“文本”字。键入全字。你在说什么?@flukyspore:他说的是写“请”而不是“请”。当你写一个问题时,努力让它易于阅读,这被认为是一种良好的网络礼仪。使用txtspk让你看起来更关心写这个问题需要多长时间,而不是让它成为一个愉快的阅读。然而,一个问题中的一个txtspk单词几乎不值得评论,这只是为了通知你这个问题在一张网络礼仪上,以备将来参考。@Guffa Thx解释。请不要“文本”字。键入全字。你在说什么?@flukyspore:他说的是写“请”而不是“请”。当你写一个问题时,努力让它易于阅读,这被认为是一种良好的网络礼仪。使用txtspk让你看起来更关心写这个问题需要多长时间,而不是让它成为一个愉快的阅读。然而,一个问题中的一个txtspk单词几乎不值得评论,这只是为了通知你这个问题用于将来参考的一段网络礼仪。@Guffa Thx用于解释。setInterval正在使浏览器崩溃。理想的是setIntervalsetInterval正在使浏览器崩溃。理想的是setIntervalsetInterval正在使浏览器崩溃。理想的是setIntervalsetInterval正在使浏览器崩溃。理想的是setIntervalsetInterval正在使浏览器崩溃