0

私は 3 つのイベント ハンドラ、mouseenter、mouseleave、およびクリックを持っています。ユーザーが「li」をクリックした場合、イベントの伝播を停止して、mouseleave ハンドラを実行しないようにします。これが私のコードです。

$('.list ul li').mouseenter(function()
    {
        $(this).addClass('listItemSelected');
    });   
    $('.list ul li').mouseleave(function()
    {
        $(this).removeClass('listItemSelected');
    });
    $('.list ul li').click(function(b)
    {
        b.stopImmediatePropagation();   
        $('.list ul').removeClass('listItemSelected');
        $(this).addClass('listItemSelected');
    });
4

1 に答える 1

0

アップデート

$('.list ul li').click(function(e)
{
    e.preventDefault();
    $('.list ul').removeClass('listItemSelected');
    // first remove from the rest of the list items then add to clicked
    $('.list ul li').removeClass('listItemClicked');
    $(this).addClass('listItemClicked');
});

listItemSelected を listItemClicked と同じにする

于 2013-03-27T18:27:57.723 に答える