Функция jQuery click работает с if / else

0

Создайте приложение списка покупок, которое по щелчку вычеркивает указанный элемент. Если этот элемент снова щелкнут, его необходимо восстановить в исходное состояние. У меня есть инструкция if/else, чтобы проверить, был ли еще применен класс "ixtem". По какой-то причине, если в списке есть несколько элементов, оператор if/else выполняется несколько раз, хотя я использовал селектор $ (this):

$('.crossout').click(function() {

    if ($(this).closest('.newitem').hasClass('xitem')) {
        $(this).closest('.newitem').removeClass('xitem');
        console.log('remove x');
    }

    else {
        $(this).closest('.newitem').addClass('xitem');
        console.log('x out');   
    }

})
  • 1
    Можете ли вы опубликовать соответствующий HTML?
  • 1
    Для этого есть toggleClass ?
Показать ещё 1 комментарий
Теги:
if-statement
click
this

1 ответ

0
Лучший ответ

попробуй это:

$( document ).ready(function() {
    $('li').each(function(i) {
        $(this).click(function() {
            $(this).toggleClass('crossOut');
        });
    });
});

скрипка здесь: http://jsfiddle.net/ackerman/nF4Jd/

Ещё вопросы

Сообщество Overcoder
Наверх
Меню