如何在纯JavaScript中添加animate.css类onclick事件?

时间:2018-01-31 08:43:52

标签: javascript animation animate.css

我无法在javascript中使用点击功能。如何添加淡入类点击事件?如果可能,现代javascript使用或es6。另外,如何在5秒内删除课程?请建议我不要JQuery。

如果可能的话,使用所有点击事件方法功能。

我无法在javascript中使用点击功能。如何添加淡入类点击事件?如果可能,现代javascript使用或es6.Also,如何在5秒内删除该类?请建议我没有JQuery。 如果可能的话,所有点击事件方法功能都会使用。

    <!DOCTYPE html>
        <html>

        <head>
            <meta charset="utf-8">
            <title>css layout</title>

            <style>
                #container {
                    width: 400px;
                    height: 400px;
                    position: relative;
                    background: yellow;
                }

                #animate {
                    width: 50px;
                    height: 50px;
                    position: absolute;
                    background-color: red;
                }

                @-webkit-keyframes fadeIn {
                    to {
                        opacity: 1;
                    }
                }

                @keyframes fadeIn {
                    to {
                        opacity: 1;
                    }
                }

                .fade-in {
                    -webkit-animation: fadeIn .5s ease-in 1 forwards;
                    animation: fadeIn .5s ease-in 1 forwards;
                    opacity: 0;
                }
            </style>


        </head>

        <body>
        <!--button-->
            <p>
                <button onclick="animations()">Click Me</button>
            </p>

            <div id="container">
                <div id="animate"></div>
            </div>
<!--js-->
            <script>
                function animations() {
                    var elem = document.getElementById("animate");

                }
            </script>
        </body>

        </html>

1 个答案:

答案 0 :(得分:1)

您可以使用classList属性将类添加到DOM元素。 请参阅classList的MDN条目:https://developer.mozilla.org/en-US/docs/Web/API/Element/classList

然后,您可以使用setTimeout函数删除该类。

所以你的动画功能看起来像这样:

function animations() {
  var elem = document.getElementById("animate");

  elem.classList.add('fade-in'); // Add .fade-in class

  setTimeout(function() {
    elem.classList.remove('fade-in'); // Remove .fade-in class
  }, 5000); // 5000ms
}