筛选给定元素上的类列表的最有效方法是什么?
<div class="foo bar"></div>
<div class="bim bar"></div>
$("div.bar").click(function(ev) {
alert("The non-bar class was:" + ???);
});
Run Code Online (Sandbox Code Playgroud)
我知道我可以编写一个for循环来遍历ev.currentTarget.classList,但我想知道是否有更好的方法.
编辑:我想澄清一下,我希望警报告诉我"foo"和"bim".我不想替换 "bar",我只是希望能够访问非bar的类.谢谢.
没有jQuery方法可以实现这一点,但我会这样做:
$("div.bar").click(function(ev) {
var nonBarClasses = (' ' + this.className + ' ').replace(' bar ', ' ').split(/ +/);
nonBarClasses.shift();
nonBarClasses.pop();
// nonBarClasses is now an array, with each element a class that isn't `bar`
alert("The non-bar class was: " + nonBarClasses.join(" "));
});
Run Code Online (Sandbox Code Playgroud)
在这里看到它:http://jsfiddle.net/PpUeX/2
| 归档时间: |
|
| 查看次数: |
152 次 |
| 最近记录: |