gpt4 book ai didi

javascript - 当我删除新创建的元素的类时,CSS3 过渡不起作用

转载 作者:行者123 更新时间:2023-11-29 10:18:06 26 4
gpt4 key购买 nike

我的工作:

  1. 创建一个元素,其样式包含 CSS3 过渡。
  2. 为其添加一个类(该类的样式包含 background-color 属性)。
  3. 向其中添加一个 innerHTML。
  4. 删除类。

当我像这样删除类时

element.classList.remove('类名')

没有转换,但是当我设置一个 0 秒延迟的超时时,它起作用了:

setTimeout(function() { element.classList.remove('classname'); }, 0);

为什么?如何避免使用 setTimeout 函数或是否正常使用?

示例:http://jsfiddle.net/JHevJ/1/

最佳答案

因为您要在屏幕计算元素重绘之前删除该类。您要在它首先显示为该类之前将其删除,因此它认为不需要动画。

超时使得它“等待”0 毫秒然后删除类,这让它首先显示带有类的元素,“等待”0 时间然后然后删除类。

关于javascript - 当我删除新创建的元素的类时,CSS3 过渡不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17296576/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com