Как я могу изменить фон выбранного li в jquery? - PullRequest
2 голосов
/ 30 сентября 2011

У меня есть неупорядоченный список с кучей элементов списка.Я устанавливаю фон выбранного <li> в его щелчке:

$(this).animate({
          backgroundColor: '#0000FF'
}, 'fast');

Когда я нажимаю другой <li>, я хочу изменить его backgroundColor свойство, но я хочу, чтобы остальные <li> с по умолчанию вернуться к другому цвету.Таким образом, похоже, что я меняю выбранное состояние.

Ответы [ 4 ]

5 голосов
/ 30 сентября 2011

Вы можете просто сделать следующее:

$(this).siblings("li").css("backgroundColor", "");

Пример для jsfiddle

0 голосов
/ 30 сентября 2011
$('li').each.click(function(){
 $(this).css("backgroundColor", "");

});
0 голосов
/ 30 сентября 2011

Я бы использовал смесь классов и CSS-переходов :

$('li').click(function(){)
    $('li.active').removeClass('active');
    $(this).addClass('active');
})

li{background:#fff; -webkit-transition:all 0.25s linear; -moz-transition:all 0.25s linear;}
li.active{background:#00f;}
0 голосов
/ 30 сентября 2011
$('ul li').click(function() {
    $(this).animate({backgroundColor:"#0000ff"},'fast')
        .siblings().animate({backgroundColor:"#000000"},'fast'); // or whatever other color you want
});
...