发布于: 使用 jQuery 核心 > 常见问题

如何测试元素是否具有特定类?

.hasClass() (在版本 1.2 中添加) 处理了这个常见的用例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$( "div" ).click(function() {
if ( $( this ).hasClass( "protected" ) ) {
$( this )
.animate({ left: -10 })
.animate({ left: 10 })
.animate({ left: -10 })
.animate({ left: 10 })
.animate({ left: 0 });
}
});

您也可以使用 .is() 方法以及适当的选择器进行更高级的匹配

1
2
3
4
5
if ( $( "#myDiv" ).is( ".pretty.awesome" ) ) {
$( "#myDiv" ).show();
}

请注意,此方法还允许您测试其他内容。例如,您可以使用自定义的 :hidden 选择器来测试一个元素是否隐藏

1
2
3
4
5
if ( $( "#myDiv" ).is( ":hidden" ) ) {
$( "#myDiv" ).show();
}