检查CSS3转换是否正在运行

时间:2013-05-31 21:11:27

标签: html5 css3 css-transitions

有没有办法在我的Javascript中检测元素当前是否正在使用CSS3过渡动画?

“transitionstart”-event(相当于'transistionend'事件)也可以解决,但我在规范中找不到任何提及。

1 个答案:

答案 0 :(得分:2)

好吧,因为只有一个转发事件(http://www.w3.org/TR/css3-transitions/#transition-events),我想到了一些丑陋的事情:

http://jsfiddle.net/coma/psbBg/6/

<强> JS

$(function() {

    var div = $('div');
    var property = div.css('transition-property');
    var lastValue = div.css(property);

    setInterval(function() {

        if(lastValue !== div.css(property)) {

            console.log('changed!');

        }

        lastValue = div.css(property);

    }, 10);

});

可以改进实现自定义事件,处理获取正确的过渡属性(或属性)以及更多想法,但是你能得到正确的结果吗?

也许你需要采取另一条路来解决原来的问题......