AddEventListener()转换结束回调在不同的浏览器中

时间:2014-01-05 16:54:18

标签: javascript jquery animation

浏览器具有不同的转换结束回调。所以,我必须为每个人创建一个 addEventListener()

addEventListener('transitionend', function() {
  // the same below
});

addEventListener('webkitTransitionEnd', function() {
  // the same above
});

但我不喜欢这样的代码。 当我这样写的时候为什么不工作?:

addEventListener('transitionend webkitTransitionEnd', function() { });
  // thing
});

以上内容不适用于任何浏览器。第一个有效。

还有更好的方法吗?有什么建议吗?

1 个答案:

答案 0 :(得分:2)

addEventListener只接受一个事件,因此您必须单独编写它们。您可以遍历列表以使其至少看起来更小

["transitionend", "webkitTransitionEnd", "mozTransitionEnd"].forEach(function(transition) {
     document.addEventListener(transition, handler, false);
});

function handler() {
    // thing
}