Как я тестирую, есть ли у элемента определенный класс?
Рассмотрим jQuery метод .hasClass()
, который позволяет ответить на этот вопрос.
.hasClass()
(добавленный в версии 1.2), обрабатывает этот часто возникающий на практике случай:
Пример
$( "div" ).click(function() {
if ( $( this ).hasClass( "protected" ) ) {
$( this )
.animate({ left: -10 })
.animate({ left: 10 })
.animate({ left: -10 })
.animate({ left: 10 })
.animate({ left: 0 });
}
});
if ( $( this ).hasClass( "protected" ) ) {
$( this )
.animate({ left: -10 })
.animate({ left: 10 })
.animate({ left: -10 })
.animate({ left: 10 })
.animate({ left: 0 });
}
});
Попробуйте Сами »
Можно также использовать метод .is()
наряду с подходящим селектором для более продвинутого сопоставления:
if ( $( "#myDiv" ).is( ".pretty.awesome" ) ) {
$( "#myDiv" ).show();
}
Отметьте, что этот метод позволяет Вам также тестировать и другие вещи. Например, можно протестировать, скрыт ли элемент (при использовании пользовательского селектора :hidden
):
if ( $( "#myDiv" ).is( ":hidden" ) ) {
$( "#myDiv" ).show();
}