1

$(element).addEvent('transitionend', function(e){
    // do soming...
});

firefox では動作しません。ただし、addEvent の代わりに addEventListener を使用すると機能します。mootools は css イベントをサポートしていませんか?

4

1 に答える 1

2

右...ドキュメントを引用するには:

MooTools の Element Events API ですべてのイベントがサポートされているわけではありません。これは、エッジ ユース ケースまたはブラウザでサポートされている新しいイベントのためです。ネイティブ イベントのサポートを追加するにはElement.NativeEvents、キーと適切なキー値を使用してオブジェクトを拡張するだけです (上記を使用します)。たとえば、アプリケーションに popstate サポートを追加するには:

Element.NativeEvents.popstate = 2;
// Now element.addEvent('popstate', fn); will work everywhere

あなたの場合は簡単です

Element.NativeEvents.transitionend = 2;

var foo = document.getElement('.foo');

foo.addEvent('transitionend', function(){
    alert('done');
});

foo.removeClass('bar');

実際: http://jsfiddle.net/gf72uu37/

これは、少なくとも標準化され、ベンダー プレフィックスがないイベントでは、おそらく修正される可能性があります。しかし、ブラウザのサポートは不完全で、mootools は IE8 さえもサポートしようとします...

于 2015-09-18T21:23:41.517 に答える