0

クリック時のリンクのクラスを に変更しています& の代わりにclass2のイベントをトリガーしたいです。新しいクラスを手動でチェックしてから、それをトリガーすることができることを私は知っています。他に方法はありますか?class2class1

ここでフィドル: http://jsfiddle.net/usXa3/

HTML:

<a href="#" class="class1">Click me!</a>

私が持っていたJquery:

$('.class1').on('click', function(){
    console.log("class1 clicked");
    $(this).removeClass('class1').addClass('class2');
    $(this).off('click');
    //Do something here to fire class2 event.
});
$(document).on('click', 'class2', function(){
    console.log("class2 clicked");
});

私の解決策 - 代替手段を探しています:

$('.class1').on('click', function(){
    var thisClass = $(this).attr('class');
    if(thisClass == "class1");
    {
        $(this).removeClass('class1').addClass('class2');
    }
    else if(thisClass == "class2")
    {
        $(".class2").trigger( "click" );
    }
});
4

2 に答える 2

1

one()のように使用します。

$('.class1').one('click', function(){
    alert("class1 clicked");
    $(this).toggleClass('class1 class2');
    //Do something here to fire class2 event. 
    $('.class2').on('click', function(){
        alert("class2 clicked");
    });
});

デモ

于 2013-11-01T15:32:46.603 に答える