如果我有一长串<li>元素,当单击一个元素时,如何获得所有兄弟元素,直到到达一个包含给定字符串的类名称?
例:
<li>test</li>
<li class="one-two red">test</li>
<li class="green">test</li>
<li>test</li>
<li>test</li>
<li class="test">test</li>
<li>test</li>
<li>test</li>
Run Code Online (Sandbox Code Playgroud)
在上面的示例中,如果li.test单击并且给定的字符串是ne-tw,则将导致其间的所有元素包括单击的元素(andSelf())和one-two类元素.
谢谢.
jquery有一个方法:
var someclass = "one-two";
$("li").click(function(){
var sel = $(this).prevUntil("." + someclass).andSelf();
sel = sel.add(sel.eq(0).prev());
console.log(sel);
});
Run Code Online (Sandbox Code Playgroud)
http://api.jquery.com/prevUntil
编辑:来自评论的代码示例:
var someclass = "one";
$("li").click(function(){
var sel = $(this).prevUntil("[class*=" + someclass + "]").andSelf();
sel = sel.add(sel.eq(0).prev());
console.log(sel);
});
Run Code Online (Sandbox Code Playgroud)