提问者:小点点

如何在JS中延迟按钮动作直到过渡结束


我有一个带有悬停动画的按钮。 此按钮将重定向到另一页。 每当我点击按钮。 重定向操作甚至在转换开始之前立即发生。 如何才能将操作延迟到过渡结束? Iam正在使用

window.location.href = ""

执行重定向操作


共2个答案

匿名用户

可能最简单的方法就是及时延迟重定向,并将延迟时间调整为动画所需的时间:

setTimeout(function(){ window.location.href = ""; }, 3000);

匿名用户

我假设您正在使用CSS转换,并且您可以等待这里记录的animateEnd回调。

也许有一种简单的方法可以做到这一点,计算/计算完成转换需要多少时间,然后使用timeout等待这段时间。

您可以尝试如下所示:

function btnClicked() {
    setTimeout(
        function() {
            window.location.href = "";
        }, 
        500  // suppose, your transition take 500ms to complete
    );
}