我知道我的选择器将有一个level-1,level-2,level-3
的类我想基于此设置关卡,但我的方式感觉有点笨重?有没有更简洁的方法来做到这一点
if ( $level.hasClass('level-2')) {
$levelValue= "level2";
}
if( $level.hasClass('level-3')) {
$levelValue = "level3";
}
if ( $level.hasClass('level-4')) {
$levelValue= "level4";
}
编辑:抱歉我的错误
答案 0 :(得分:2)
使用此:
if($level.is('.level-2, .level-3, .level-4')){
$level = "level2";
}
这使用jQuery的.is()
函数,并检查$level
是否包含任何类。
更新:尝试使用此功能:
if($level.is('[class^="level"]')){
$levelValue = $level.attr('class').match(/level-[0-9]*/); // e.g. 'level-2'
}
答案 1 :(得分:0)
是否有与每个级别相关联的样式规则?如果它只是数据,我会使用像data-level='2'
这样的数据属性,那么你可以使用这个jQuery函数来访问它:$level.data('level')
答案 2 :(得分:0)
什么是$ level?一个div? 如果你想将$ level设置为“level1”,“level2”和“level3”(每次都像代码中那样“level2”),你可以使用数据attr:
<div class="level1" data-level="1">
<div class="level2" data-level="2">
<div class="level3" data-level="3">
你的js就像:
$level = $level.data("level") //will return "1","2" or "3"