用jquery选择当前类

时间:2014-07-07 09:52:06

标签: jquery

假设我有以下html:

<div class="nav-1 anotherClass">menu one</div>
<div class="someClass nav-2">menu two</div>

现在,我想选择这样的类:

var nav = $('[class^=nav]').attr('class').split(' ')[0];

它获得第一个div的nav-1和第二个div的someClass。

如何获得以nav开头的课程?

我尝试了这个但没有奏效:

var nav = $('[class^=nav]').attr('class').split(' ')[this];

周围有简单吗?

2 个答案:

答案 0 :(得分:1)

尝试

var nav = $('[class|=nav]').attr('class').match(/(nav-[^\s]+)/)[0];

$('[class|=nav]').each(function(){
    var nav = this.className.match(/(nav-[^\s]+)/)[0]
})

答案 1 :(得分:1)

不,不幸的是,没有简单的方法可以进入特定的课程。你必须遍历所有类:

var navList = $('[class*=nav]').attr('class').split(' ');
var nav;
for(var i in navList) {
    if(navList[i].indexOf('nav') === 0) { nav = navList[i]; break; }
}

这就是使用自定义html属性的常见原因,例如

<div class="nav anotherClass" data-custom-value=1>menu one</div>
<div class="someClass nav" data-custom-value=2>menu two</div>

和...

var navNumber = $('.nav').attr('data-custom-value');