发布在:使用 jQuery Core > 常见问题

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

.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();
}