【问题标题】:Detect the end of rotation in CSS [duplicate]检测CSS中的旋转结束[重复]
【发布时间】:2019-11-07 21:54:09
【问题描述】:
我正在使用这个过渡来旋转轮子:
transform: rotate(180deg);
transition: transform 10s cubic-bezier(.5,.1,.15,1);
现在,如何使用 JS 检测转场的发送?
谢谢。
【问题讨论】:
标签:
javascript
css
transform
【解决方案1】:
function whichTransitionEvent(){
var t,
el = document.createElement("fakeelement");
var transitions = {
"transition" : "transitionend",
"OTransition" : "oTransitionEnd",
"MozTransition" : "transitionend",
"WebkitTransition": "webkitTransitionEnd"
}
for (t in transitions){
if (el.style[t] !== undefined){
return transitions[t];
}
}
}
var transitionEvent = whichTransitionEvent();
$(".button").click(function(){
$(this).addClass("animate");
$(this).one(transitionEvent,
function(event) {
alert("The transition has ended!");
$(this).removeClass("animate");
});
});
使用jquery的解决方案
它可以检测过渡结束