Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.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 我如何向div添加时间延迟,使它们像powerpoint幻灯片一样一个接一个地出现?_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 我如何向div添加时间延迟,使它们像powerpoint幻灯片一样一个接一个地出现?

Javascript 我如何向div添加时间延迟,使它们像powerpoint幻灯片一样一个接一个地出现?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,假设我想让div 1在2秒后出现,div 2在7秒后出现,div 3在15秒后出现 我有没有办法添加一个内联样式元素,使div从隐藏但占用空间变成完全可见 我一直在搜索,发现的大多数东西都是鼠标悬停/点击触发的。我似乎找不到任何有时间触发器的东西 多谢各位 编辑:为了让这更清楚,我正在寻找任何类型的代码,有一个时间延迟出现。当我搜索transition时,我会得到一堆基于动作的代码,比如单击或悬停。我不是在寻找一个用户动作来触发这个,只是一次 当我搜索动画时,我会得到一系列关于运动图像的结果,我

假设我想让div 1在2秒后出现,div 2在7秒后出现,div 3在15秒后出现

我有没有办法添加一个内联样式元素,使div从隐藏但占用空间变成完全可见

我一直在搜索,发现的大多数东西都是鼠标悬停/点击触发的。我似乎找不到任何有时间触发器的东西

多谢各位

编辑:为了让这更清楚,我正在寻找任何类型的代码,有一个时间延迟出现。当我搜索transition时,我会得到一堆基于动作的代码,比如单击或悬停。我不是在寻找一个用户动作来触发这个,只是一次

当我搜索动画时,我会得到一系列关于运动图像的结果,我也不需要这些结果

当我搜索时间延迟时,我得到了一系列关于时间延迟转换的结果,即在用户操作发生后,转换发生了多长时间,这仍然需要用户输入,而我不需要用户输入


我更多的是问我应该寻找什么,是否有一个词来形容它或是你熟悉的东西可以做到这一点。我没有提供任何代码,因为我不想让你给我编码。我要求铅,因为我找不到合适的词来确定我需要什么,这让我很沮丧

如果您希望占用空间-也就是说,您不希望事情崩溃,我会创建div,并将其设置为
display
none
,然后将
不透明度设置为
0
。这将隐藏元素,但仍会占用页面上的物理空间

然后我将创建一个名为“show”或类似的css类:

CSS:

.show {
    opacity: 1;
    transition: opacity 1s ease-in-out;
    -webkit-transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -ms-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
}
 $(function() {
     setTimeout(function(){
         showElement();
      }, 3000);

     function showElement() {
         $('my-div').toggleClass('show');
     }
  });
然后使用jQuery(或javascript),您可以使用或。在超时函数中,可以动态地将“show”类分配给每个元素。这将在指定的“x”秒后淡入每个元素

大概是这样的:

jQuery:

.show {
    opacity: 1;
    transition: opacity 1s ease-in-out;
    -webkit-transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -ms-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
}
 $(function() {
     setTimeout(function(){
         showElement();
      }, 3000);

     function showElement() {
         $('my-div').toggleClass('show');
     }
  });

如果你想占用空间——也就是说你不想让东西折叠起来,我会创建div,将其设置为
display
none
,然后将
不透明度设置为
0
。这将隐藏元素,但仍会占用页面上的物理空间

然后我将创建一个名为“show”或类似的css类:

CSS:

.show {
    opacity: 1;
    transition: opacity 1s ease-in-out;
    -webkit-transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -ms-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
}
 $(function() {
     setTimeout(function(){
         showElement();
      }, 3000);

     function showElement() {
         $('my-div').toggleClass('show');
     }
  });
然后使用jQuery(或javascript),您可以使用或。在超时函数中,可以动态地将“show”类分配给每个元素。这将在指定的“x”秒后淡入每个元素

大概是这样的:

jQuery:

.show {
    opacity: 1;
    transition: opacity 1s ease-in-out;
    -webkit-transition: opacity 1s ease-in-out;
    -moz-transition: opacity 1s ease-in-out;
    -ms-transition: opacity 1s ease-in-out;
    -o-transition: opacity 1s ease-in-out;
}
 $(function() {
     setTimeout(function(){
         showElement();
      }, 3000);

     function showElement() {
         $('my-div').toggleClass('show');
     }
  });

您可以使用css转换在样式表中设置延迟后设置可见性属性的动画,也可以使用JS和setTimeout()更改可见性属性

HTML

这将设置回调以在1000毫秒或1秒后覆盖css属性

对于纯css解决方案,我们可以使用它。为了实现跨平台兼容性,我们需要提供多个属性

@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
.fade-in {
    opacity:0;
    -webkit-animation:fadeIn ease-in 1;
    -moz-animation:fadeIn ease-in 1;
    animation:fadeIn ease-in 1;

    -webkit-animation-fill-mode:forwards; 
    -moz-animation-fill-mode:forwards;
    animation-fill-mode:forwards;

    -webkit-animation-duration:1s;
    -moz-animation-duration:1s;
    animation-duration:1s;
}
因此,这个名为“淡入”的类将1s动画添加到它添加到的任何元素中,它将在加载后立即开始。它是基于不透明度的,因此当对象不可见时会占用空间,如果您不希望这样,则需要在显示时使用变体:无

可以使用以下命令向元素添加延迟:

-webkit-animation-delay: 2s;
-moz-animation-delay: 2s;
animation-delay: 2s;

只需为每个“幻灯片”设置一个不同的值,使它们在不同的时间淡入即可。

您可以使用css转换在样式表中设置延迟后设置可见性属性的动画,也可以使用JS和setTimeout()更改可见性属性

HTML

这将设置回调以在1000毫秒或1秒后覆盖css属性

对于纯css解决方案,我们可以使用它。为了实现跨平台兼容性,我们需要提供多个属性

@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
.fade-in {
    opacity:0;
    -webkit-animation:fadeIn ease-in 1;
    -moz-animation:fadeIn ease-in 1;
    animation:fadeIn ease-in 1;

    -webkit-animation-fill-mode:forwards; 
    -moz-animation-fill-mode:forwards;
    animation-fill-mode:forwards;

    -webkit-animation-duration:1s;
    -moz-animation-duration:1s;
    animation-duration:1s;
}
因此,这个名为“淡入”的类将1s动画添加到它添加到的任何元素中,它将在加载后立即开始。它是基于不透明度的,因此当对象不可见时会占用空间,如果您不希望这样,则需要在显示时使用变体:无

可以使用以下命令向元素添加延迟:

-webkit-animation-delay: 2s;
-moz-animation-delay: 2s;
animation-delay: 2s;

只需为每个“幻灯片”设置一个不同的值,使它们在不同的时间淡入即可。

查看.delay()此处:也许您正在搜索类似的内容:这不是“希望”代码的格式。表现出你已经准备好了,并解释你被困在哪里。当你一无所有,也不知道该做什么的时候,雇佣一个人。这个链接可能会帮助你找到一个解决方案:FYI@RichardCane,Nico的评论没有恶意。他只是解释说,SO不是一种编码服务,在这里发布的障碍设置得很高,这样1)人们就不会依赖他人编写他们自己还没有尝试过的代码,2)我们有机会在所有信息都可用时提供帮助。在没有考虑的情况下发布一个弱问题被认为是不好的形式。请看这里的.delay():也许您正在搜索这样的内容:这不是“希望”代码的格式。表现出你已经准备好了,并解释你被困在哪里。当你一无所有,也不知道该做什么的时候,雇佣一个人。这个链接可能会帮助你找到一个解决方案:FYI@RichardCane,Nico的评论没有恶意。他只是解释说,SO不是一种编码服务,在这里发布的障碍设置得很高,这样1)人们就不会依赖他人编写他们自己还没有尝试过的代码,2)我们有机会在所有信息都可用时提供帮助。在没有考虑的情况下发布一个弱问题被认为是不好的形式。如果没有太多麻烦的话,发布一个pur CSS将是非常好的。OK,这是一个l