如何使用jquery ui执行一个函数AFTER toggleClass

时间:2015-03-03 10:21:48

标签: jquery jquery-ui

只有在$(parent).toggleClass('opened closed');

触发动画完成后才能调用toggleClass('show-flyout hide-flyout')

我该怎么做?

 *$('.drawer-left-trigger').click(function () {
            var parent = $(this).parent();
            $(parent).toggleClass('opened closed');
            $(parent).toggleClass('show-flyout hide-flyout')
        });*

这没有帮助:

 $('.drawer-left-trigger').click(function () {
            var parent = $(this).parent();
            $(parent).toggleClass('opened closed',function(){

                    $(parent).toggleClass('show-flyout hide-flyout');
             });

        });

2 个答案:

答案 0 :(得分:0)

试试这个

    $(parent).toggleClass('opened closed').promise().done(function(){
    setTimeout(function(){
        $(parent).toggleClass('show-flyout hide-flyout');
    },1000);

    });

答案 1 :(得分:0)

我猜你是通过打开/关闭来使用css动画所以你应该在动画结束时听,例如:

$(parent).one('transitionend webkitTransitionEnd oTransitionEnd otransitionend MSTransitionEndfunction', function() { 
   $(parent).toggleClass('show-flyout hide-flyout');
});