あなたが何をしようとしているのか本当に理解できませんが、とにかく試してみますか? これはあなたのコードです:
$(".my_butt").on("click", function (e) {
$(".block").addClass("in");
$(".block").one("transitionend MSTransitionEnd webkitTransitionEnd oTransitionEnd", function (e) {
console.log('pl')
setTimeout(function () {
$(".block").removeClass("in");
}, 3000);
});
});
transitionEnd
ボタンをクリックするたびに、イベントハンドラーがボタンのクリックイベントハンドラー内にあるため、イベントをより多く再バインドするone()
ため、もちろん、ボタンをクリックするたびにクラスが削除されますか?
transitionEnd
ドキュメントが読み込まれるたびに 1 回だけイベント ハンドラーをアタッチするには、イベント ハンドラーをボタンのクリック関数の外に移動します。
$(".my_butt").on("click", function (e) {
$(".block").addClass("in");
});
$(".block").one("transitionend MSTransitionEnd webkitTransitionEnd oTransitionEnd", function (e) {
setTimeout(function () {
$(".block").removeClass("in");
}, 3000);
});