我如何添加时间延迟到我的潜水,使他们出现一个接一个像幻灯片一样
How can I add a time delay to my divs, so they appear one after the other like a powerpoint slide?
假设我想让div 1在2秒后出现,div 2在7秒后出现,div 3在15秒后出现。
是否有一种方法可以让我添加一个内联样式元素,使div从隐藏但占用空间到完全可见。
我一直在搜索,我发现的大多数东西都是悬停/点击触发的。我好像找不到任何有时间触发器的东西。
谢谢。
编辑:为了使这更清楚,我正在寻找任何一种有时间延迟出现的代码。当我搜索过渡时,我得到一堆基于动作的代码,比如点击或悬停。我不是在寻找一个用户动作来触发这一点,只是一个时间。
当我搜索动画时,我得到一堆关于运动图像的结果,这也是我不需要的。
当我搜索时间延迟时,我得到了一堆关于时间延迟转换的结果,这是在用户动作发生多久之后,转换发生仍然需要用户输入,而我不想要用户输入。
我更多的是问我应该找什么,如果有一个词或你熟悉的东西,这样做。我没有提供任何代码,因为我不想让你给我写代码。我在寻求指引,因为我找不到合适的词来形容我需要什么,这让我很沮丧。
你可以在样式表中设置延迟后使用css过渡来动画可见性属性,或者你可以使用JS和setTimeout();
HTML<div id="div1" style="visibility:hidden;"></div>
JS
setTimeout(function(){
document.getElementById('div1').style.visibility = "visible";
},1000);
设置一个回调,在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;
}
这个叫做fade-in的类为它所添加的元素添加了一个动画,它会在加载后立即启动。它是基于不透明度的,所以当物体不可见时,它会占用空间,如果你不想这样,你需要在显示上使用一个变量:none。
可以使用
为元素添加延迟-webkit-animation-delay: 2s;
-moz-animation-delay: 2s;
animation-delay: 2s;
只需为每个"幻灯片"设置不同的值,以使它们在不同的时间淡入
如果你想占用空间-意思是你不想让东西折叠起来,我会创建div,并将其设置为display
为none
,然后将opacity
为0
。这将隐藏元素,但它仍然会占用页面的物理空间。
然后我要创建一个css类名为"show"或类似的东西:
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;
}
然后用jQuery(或javascript)你可以使用setInterval,或setTimeOut。在超时函数中,可以动态地将"show"类分配给每个元素。这将使每个元素在你指定的"x"秒后淡出。
像这样:
jQuery: $(function() {
setTimeout(function(){
showElement();
}, 3000);
function showElement() {
$('my-div').toggleClass('show');
}
});
- 使用向下箭头键(与tab键一样)聚焦下一个输入
- DIV怎么能像Javascript中的另一个元素一样工作呢
- 我正在创建一个聊天,但每次我发送消息时,它都不会让我再发送另一条消息,就像表格一样;不起作用
- 我如何创建一个选择器,就像jQuery有jQuery()或$()一样
- 试图清理一个电话号码,以便如果它像816-345-6757一样被输入,它会像8163456757一样返回它
- 将多个画布保存为一个图像(使网站像PicFrame一样)
- 为什么javascript函数名称custom是一个小写的单词,后跟一个大写的单词,就像'orangeCost'一样
- 一个对象怎么能像返回自身和另一个对象一样工作
- 为什么下面的if语句排除了一个'It’s和其他的一样
- 如何创建一个像SQL十进制类型一样匹配(p,s)精度和小数位数的正则表达式
- 为一个像球一样的凌空抽射服务
- 如何将dxFileUploader配置为像一个简单的按钮一样显示
- 如何使pjax:postate像一个简单的pjax调用一样工作
- 像所见即所得的概念一样编辑一个html页面
- 是否有一个JS库可以让我在网格中制作可拖动和可调整大小的磁贴,就像在iPhoto Journal中一样
- 是否有一个JavaScript / Jquery组件可以创建一个像Eclipse一样的工作空间
- 在两个或多个 UL 列表之间切换,如果单击一个列表,则其他列表会自动以初始状态返回,就像从未单击过一样
- 匿名回调函数抛出错误,使一个像forEach一样遍历数组
- 我想像Facebook或验证码验证一样显示一个面板
- 正则表达式像一个一样处理多个匹配项,如何修复