【发布时间】:2018-09-23 21:03:21
【问题描述】:
我已经设置了类似的 CSS 过渡
transition: all 2s
然后我应用 CSS 来更改转换,如:
transform: rotate(20deg);
过渡开始。
我想中途停止它并让它留在那里,这样我就可以在其上应用一些其他依赖于应用程序的 JS... 暂停后的内容与问题无关测试,我用:
setTimeout(function() {
...
}, 1000);
停止过渡的一种粗略方法是将 CSS 显示设置为“无”。 将转换设置为“无”或空字符串不起作用。转换结束以进行转换。将 CSS 重置为当前 CSS 的另一个技巧适用于其他属性,但不适用于转换。将转换属性设置为 none 或空字符串也不会停止转换的转换。
肯定有办法。
有什么建议吗?最好在 JQuery 中 我不想使用动画。
【问题讨论】:
-
停下来回来?还是停下来?
-
如果禁用过渡会怎样?
-
@ArthurGuiot 如果您的意思是将过渡 CSS 属性设置为“无”或空字符串,我尝试过...查看问题。
-
@Tenabu Afif 实际上,您可以通过简单地将这些属性恢复为当前属性,在所有其他 CSS 转换中停止它。我在一些帖子/博客上学到的技巧,如 $(selector).css('opacity', $(selector).css('opacity;)) 这将停止不透明度转换并且也适用于其他 CSS 属性,但它不会出于某种原因进行转换。
-
@Sam 在下面检查我的答案,我用这个技巧更新它,它工作正常
标签: javascript jquery css css-transitions css-transforms