jquery过滤器元素类

时间:2013-05-26 19:23:41

标签: javascript jquery filter onclick

我有当前的HTML代码:

<ul id="test">
  <li class="apple cat active"></li>
  <li class="apple dog"></li>
  <li class="apple bear"></li>
</ul>

然后我有一个onclick监听器

$('.apple').bind('click',function(){
  alert($(this).attr('class'));
  postClassname(...);
});

我想过滤指定的重复类名

eg:
"apple bear" > "bear"
"apple dog" > "dog"
"apple hover xyz fox abc123" > "fox"
"apple active cat" > "cat"

并且班级名称顺序可能是动态的

然后将过滤后的类名传递给postClassname()函数

在postClassname函数中

function postClassname(class){
  switch(class){
    case 'fox':
       alert('selected fox');
    break;
  }
}

我怎样才能实现这一目标?

2 个答案:

答案 0 :(得分:0)

您可以拆分班级名称:

$('.apple').click(function() {
    var second_class = this.className.split(/\s+/)[1];

    postClassname(second_class);
});

答案 1 :(得分:0)

这是你应该做的 DEMO FIDDLE

代码 -

var animalList = ['cat', 'dog', 'bear'];
$('.apple').bind('click',function(){
var classList = $(this).attr('class');
classList= classList.split(" ");
$(classList).each(function(){
    if(animalList.indexOf(this+'') >-1)
        postClassname(this);
});
});