Javascript 我希望在运行每个循环时延迟1亿毫秒

Javascript 我希望在运行每个循环时延迟1亿毫秒,javascript,Javascript,这是我的for循环。。。每次for循环完成1个循环时,wat i want是tat,它应该等待或睡眠100毫秒,以便tat可以产生渐弱效果……您应该调用setTimeout,它将在给定延迟后执行函数 例如: for(i=100;i>=0;i--){ icon.style.filter="alpha(opacity=0)"; } function fadeOut(i) { i = i || 100; icon.style.filter = "alpha(opaci

这是我的for循环。。。每次for循环完成1个循环时,wat i want是tat,它应该等待或睡眠100毫秒,以便tat可以产生渐弱效果……

您应该调用
setTimeout
,它将在给定延迟后执行函数

例如:

for(i=100;i>=0;i--){
    icon.style.filter="alpha(opacity=0)";
}
function fadeOut(i) {
    i = i || 100;
    icon.style.filter  = "alpha(opacity=" + i + ")";
    icon.style.opacity = i / 100;

    i--;
    if (i > 0)
        setTimeout(function() { fadeOut(i) }, 100);    //Call fadeOut in 100 milliseconds
}

您还可以调用
setInterval
,它将一直调用该函数,直到您调用
clearInterval

例如:

for(i=100;i>=0;i--){
    icon.style.filter="alpha(opacity=0)";
}
function fadeOut(i) {
    i = i || 100;
    icon.style.filter  = "alpha(opacity=" + i + ")";
    icon.style.opacity = i / 100;

    i--;
    if (i > 0)
        setTimeout(function() { fadeOut(i) }, 100);    //Call fadeOut in 100 milliseconds
}

您应该调用
setTimeout
,它将在给定延迟后执行函数

例如:

for(i=100;i>=0;i--){
    icon.style.filter="alpha(opacity=0)";
}
function fadeOut(i) {
    i = i || 100;
    icon.style.filter  = "alpha(opacity=" + i + ")";
    icon.style.opacity = i / 100;

    i--;
    if (i > 0)
        setTimeout(function() { fadeOut(i) }, 100);    //Call fadeOut in 100 milliseconds
}

您还可以调用
setInterval
,它将一直调用该函数,直到您调用
clearInterval

例如:

for(i=100;i>=0;i--){
    icon.style.filter="alpha(opacity=0)";
}
function fadeOut(i) {
    i = i || 100;
    icon.style.filter  = "alpha(opacity=" + i + ")";
    icon.style.opacity = i / 100;

    i--;
    if (i > 0)
        setTimeout(function() { fadeOut(i) }, 100);    //Call fadeOut in 100 milliseconds
}

John Resig编写了非常酷的JavaScript函数,用于淡入淡出(稍微编辑):

然后,您可以像这样使用它:

function fadeOut(elem, time)
{

 var t = time / 100;

 var c = 0;

 for (var b = 100; b >= 0; b -= 5)
 {

  c +=5;

  (function(){
   var pos = b;

   setTimeout(function(){

    setOpacity(elem, pos);
   }, ((c + 1) * t));
  })();
 }

}

function fadeOut(elem, time)
{
 show(elem);

 var t = time / 100;

 var c = 0;

 for (var b = 100; b >= 0; b -= 5)
 {

  c +=5;

  (function(){
   var pos = b;

   setTimeout(function(){

    setOpacity(elem, pos);
   }, ((c + 1) * t));
  })();
 }

}

function show(elem)
{

 elem.style.display = '';
}

function setOpacity(elem, level)
{
 if (elem.filters)
 {
  elem.style.filters = 'alpha(opacity=' + level + ')';
 }
 else
 {
  elem.style.opacity = level / 100;
 }
}
编辑:

使用jQuery会更容易,但您将了解它如何使用普通JavaScript工作

var el = document.getElementById("#element");

fadeIn(el,1000); //Fade in over 1 second
fadeOut(el,1000); //Fade out over 1 second

John Resig编写了非常酷的JavaScript函数,用于淡入淡出(稍微编辑):

然后,您可以像这样使用它:

function fadeOut(elem, time)
{

 var t = time / 100;

 var c = 0;

 for (var b = 100; b >= 0; b -= 5)
 {

  c +=5;

  (function(){
   var pos = b;

   setTimeout(function(){

    setOpacity(elem, pos);
   }, ((c + 1) * t));
  })();
 }

}

function fadeOut(elem, time)
{
 show(elem);

 var t = time / 100;

 var c = 0;

 for (var b = 100; b >= 0; b -= 5)
 {

  c +=5;

  (function(){
   var pos = b;

   setTimeout(function(){

    setOpacity(elem, pos);
   }, ((c + 1) * t));
  })();
 }

}

function show(elem)
{

 elem.style.display = '';
}

function setOpacity(elem, level)
{
 if (elem.filters)
 {
  elem.style.filters = 'alpha(opacity=' + level + ')';
 }
 else
 {
  elem.style.opacity = level / 100;
 }
}
编辑:

使用jQuery会更容易,但您将了解它如何使用普通JavaScript工作

var el = document.getElementById("#element");

fadeIn(el,1000); //Fade in over 1 second
fadeOut(el,1000); //Fade out over 1 second

我已经用过了bt不能正常工作。。。你能告诉我写它的正确方法吗。。。我在下面写的。。对于(i=100;i>=0;i--){//icon.style.filter=“alpha(opacity=0)”;setTimeOut(“fade2()”,120)}这很好…..您应该将函数传递给
setTimeOut
,而不是字符串。您的代码将连续调用
setTimeout
100次,这样每个回调都将在120ms后的同一时间触发。setTimeout(“fade2()”,120)与setTimeout(fade2120)和setTimeout(function(){fade2();}),120)相同。你可以用不同的方式来称呼它。我用过它。bt不能正常工作。。。你能告诉我写它的正确方法吗。。。我在下面写的。。对于(i=100;i>=0;i--){//icon.style.filter=“alpha(opacity=0)”;setTimeOut(“fade2()”,120)}这很好…..您应该将函数传递给
setTimeOut
,而不是字符串。您的代码将连续调用
setTimeout
100次,这样每个回调都将在120ms后的同一时间触发。setTimeout(“fade2()”,120)与setTimeout(fade2120)和setTimeout(function(){fade2();}),120)相同。你可以用不同的方式来称呼它。你考虑过使用jquery吗?我想你的意思是什么,什么时候打wat和tat。如果你想让人们帮忙,试着做点努力。你考虑过使用jquery吗?我想你的意思是什么,什么时候打wat和tat。如果你想让别人帮忙,试着努力一下。