Ich habe etwas Javascript, das einige Stiländerungen auslöst, die zu CSS-Übergängen führen.Wie unterstützt man Transitionend ohne Browser-Sniffing?
Wie sollte ich einen Callback einbinden, der ausgeführt wird, nachdem der Übergang abgeschlossen ist. Offensichtlich wird es in älteren Browsern sofort übergehen, aber diese werden das Ereignis transitionend auch nicht erkennen.
Was ist der beste Weg, um diese kurze binden verschiedene Ereignisse zu tun if ($ Browser.msie & & $ browser.version < = 9) - was ich ist eine schlechte Praxis zu verstehen.
Hier ist ein kurzes Beispiel mein Punkt zu illustrieren:
HTML
<div>test</div>
CSS
div {
border: 1px solid black;
transition: width 2s;
width: 5px
}
.test {
width: 100px;
}
JS
$(function(){
$(document).on('transitionend', function(){
alert('transition complete');
});
$('div').addClass('test');
});
Live-JS Geige: http://jsfiddle.net/vsDrH/1/
Wie kann dieses Ereignis in alten Browsern am besten funktionieren?
Danke für jede Hilfe.
dies nicht funktionieren wird Feuer! transitionend ist ein Ereignis, keine Eigenschaft des Stilobjekts, daher gibt die Funktion isSupported false zurück, auch wenn der Browser das Ereignis unterstützt. – brennanyoung