Я использую следующий код JQuery, чтобы вызвать события на transitionend и избежать многократного обратного вызова/поддержка нескольких браузеров:Переход Конец Запасной для IE9
function whichTransitionEvent(){
var t;
var 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];
}
}
}
(код найти здесь: http://davidwalsh.name/css-animation-callback)
Однако , кажется, что ie9 не поддерживает переход, независимо от префикса/синтаксиса. Как мне настроить резерв для ie9, когда я использую его в сценарии следующего вида (чтобы удалить экран загрузки из DOM после завершения анимации)?
$('#loading').one(transitionEvent, function(event) {
$('#loading').remove();
});
Я видел несколько ответов о том, как предотвратить несколько обратных вызовов, используя аналогичную функцию к одному в верхней части этого поста, но я просто не понимая, как создать запасной вариант. Спасибо за вашу помощь!
, но если выполняется резервное копирование ('transitionEvent' является' undefined'), то вы запускаете и 'undefined' событие! – guari
, вы должны проверить значение 'transitionEvent' вверху, а затем переопределить значение и сделать остальное – guari