Сегодня я пишу код, который запускает код, если человек нажимает на чекбокс.
Я написал код следующим образом:
$(".checkbox").on( "click", function() {
//code
});
Я мог бы написать код следующим образом:
$(".checkbox").on( "change", function() {
//code
});
Обе достигают той же цели, которую я ищу, но должен ли я использовать ее над другой?
Вы должны использовать change
, так как флажок можно изменить с помощью клавиатуры (вкладка в элемент, нажмите пробел). Кроме того, его можно изменить с помощью какого-либо другого кода JavaScript (в будущем) или с помощью щелчка, если эта метка "прикреплена" к флажку.
Элементы формы поднимают события onchange
когда пользователь меняет свои значения. Как и в другом ответе, это может быть связано с щелчками мыши или нажатиями клавиш.
Любой элемент, занимающий пространство экрана, будет onclick
событие onclick
всякий раз, когда пользователь нажимает на него. Обратный вызов, который вы предоставляете, получает аргумент, содержащий координаты курсора X и Y и некоторые другие вещи.
Так получилось, что когда вы нажимаете флажок, который меняет свое значение, так и onchange
события onclick
и onchange
.
Вы должны использовать любое событие, которое наилучшим образом соответствует желаемому эффекту на вашей странице.
:)
если ты имеешь в видуchange === click
тогда не правильно решить, какое событие пользователь должен вызвать или должен вызвать.