javascript - 使用纯 JavaScript 中的 setTimeout 方法向 div 添加一些过渡

标签 javascript css

我想在#div 超时时添加一些过渡。我还在 setTimeout 方法中添加了 webkitTransition,但没有找到转换。请帮助我也编辑我的代码。

    <!DOCTYPE html>
    <html>

    <body>
    <style>
    #div {
        opacity: 1;
        transition: opacity 2s ease-in-out;
        -moz-transition: opacity 2s ease-in-out;
        -webkit-transition: opacity 2s ease-in-out;
        background:#BD5557;
        position: absolute;
        height: 500px;
        width: 960px;   
    }
</style>
<div id="div">Display out after 1 second</div>

<script>
function displayOut() {
    var x = document.getElementById('div');

    setTimeout(function(){ x.style.display='none';x.style.webkitTransition  = 'opacity 2s ease-in-out';
    x.style.transition = 'opacity 2s ease-in-out';}, 1000);


}
displayOut();
</script>
</body>
</html>





    </body>
    </html>

最佳答案

问题是您在应用转换的同时尝试应用 display:none;

此外,如果在 css 中声明了所有 css 过渡属性,则无需重新应用它们。

function displayOut() {
    var x = document.getElementById('div');

    setTimeout(function(){ 
        x.style.opacity='0';
    }, 1000);
}

displayOut();

这是一个有效的 example

关于javascript - 使用纯 JavaScript 中的 setTimeout 方法向 div 添加一些过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31279922/

相关文章:

javascript - 如何使用RequireJS所需要的库

css - 如何创建两个 div,一个固定大小,另一个 100%

javascript - 占位符垫片 - 被媒体查询窃听

javascript - 使 <p> 标签保持 div 的宽度,并在其右侧添加一个链接(以图标作为背景)

javascript - knockout : dynamic content and applyBindings

javascript - 构建 $http.get 请求...错误

javascript - 在父类上调用方法之前从子元素中删除父类 (javascript/jquery)

javascript 如何删除基于 if else 的选择选项

html - CSS 产生一个奇怪的空间

html - 如何让CSS动画完成后不反转?里面的例子