JavaScript 应用程序的 CSS 转换失败
在尝试使用 CSS3 转换增强幻灯片放映时,用户遇到了一个令人困惑的问题:转换尽管通过 JavaScript 应用了正确的样式,但仍拒绝运行。
JavaScript 检索幻灯片并分配预定义的 CSS 类来控制动画。但是,指定的转换无法激活。使用开发者工具控制台手动应用样式和过渡时,不会出现这种现象。
通过分析,确定要发生过渡,必须满足三个条件:
在有问题的 JavaScript 实现中,条件 1 和 2 是动态分配的。因此,浏览器处理和注册更改没有时间延迟。
要解决此问题,建议在应用条件 3 之前插入延迟。此延迟允许浏览器处理之前的更改,确保在其值更改时正确识别转换属性:
<code class="javascript">window.setTimeout(function() { slides[targetIndex].className += " target-fadein"; }, 100); </code>
或者,可以直接在 HTML 中应用条件 3,确保在页面加载期间定义转换属性,从而消除JavaScript 中需要延迟:
<code class="html"><div class="target-fadein-begin" ...></div></code>
一旦满足这些条件,CSS3 转换触发的动画将按预期运行。
以上是为什么我的 CSS 转换无法与我的 JavaScript 幻灯片一起使用?的详细内容。更多信息请关注PHP中文网其他相关文章!