Показать сообщение отдельно
  #1 (permalink)  
Старый 28.10.2014, 09:19
Аватар для utb
utb utb вне форума
Аспирант
Отправить личное сообщение для utb Посмотреть профиль Найти все сообщения от utb
 
Регистрация: 26.10.2011
Сообщений: 94

Стилизация checkbox
Приветствую всех.
Делаю стилизацию чекбокса:
- прячу все чекбоксы
- добавляю span с классом (и соответственно стили)
- проверяю были ли checked, добавляю класс для активных псевдочекбоксов
- при клике на псевдочекбокс, передаю клик самому чекбоксу
$(document).on('click', '.input_checkbox', function(){
$(this).prev().click();
});

- при изменении чекбокса изменяю класс псевдочекбоксу

Всё ок, работает.

Но если добавить label

<label for="check">
 <input type="checkbox" id="check">
 <span class="input_checkbox"></span>
 bla-bla
</label>


По клику на label происходит передача клика чекбоксу, псевдочебокс изменился - ok
Но если при такой структуре кликнуть по псевдочебоксу он передаст клик на чекбокс + клик передаст и label

Как правильно отловить это событие от label ?

писать проверку на родителя чекбокса ? типа

if ($(this).closets('label')) e.defaultPrevented()


Помогите разобраться.

з.ы. Совет использовать плагин не нужен, т.к. это не для сайта, а для себя

Последний раз редактировалось utb, 28.10.2014 в 09:22.
Ответить с цитированием