我有这个javascript:

function addToCart(id){

    //  alert(document.getElementById('pizza-title'+id).innerHTML);
        document.getElementById('floating-notif').setAttribute("style", "display:block; animation: fadein 2s;-moz-animation: fadein 2s; -webkit-animation: fadein 2s;-o-animation: fadein 2s;");
        setTimeout(hideFloatinDiv(), 5000);
    }

    function hideFloatinDiv(){
        document.getElementById('floating-notif').setAttribute("style", "display:none;");

    }


现在我正在做的是,单击按钮后,div将显示2秒的过渡动画,该动画当前有效,而5秒钟后,其display none消失,当前不起作用。

问题是,当我放setTimeout(hideFloatinDiv(), 5000);时,它将无法工作。

有没有一种方法可以显示div几秒钟并将其再次隐藏在javascript或css中?

最佳答案

您正在立即调用函数hideFloatinDiv,而不是将其传递给setTimeout。取下括号:

setTimeout(hideFLoatinDiv, 5000);

10-05 20:50