Javascript 如何选择给定类的上一个元素
我有一份UL清单:Javascript 如何选择给定类的上一个元素,javascript,jquery,Javascript,Jquery,我有一份UL清单: <ul> <li data-sel='foo'></li> <li></li> <li data-sel='foo'></li> <li class='selected'></li> <li data-sel='foo'></li> </ul> 但是我如何访问li.selected的前一个元素谁具有属性data
<ul>
<li data-sel='foo'></li>
<li></li>
<li data-sel='foo'></li>
<li class='selected'></li>
<li data-sel='foo'></li>
</ul>
但是我如何访问
li.selected的前一个元素谁具有属性data sel=foo
?您是否尝试了:has
选择器 您是否尝试了:has
选择器 这应该可以正常工作:
var element = $('.selected').prev("li[data-sel='foo']");
这应该可以正常工作:
var element = $('.selected').prev("li[data-sel='foo']");
这就是prev()
的工作原理,您可以像这样使用preval()
:
或
这就是prev()
的工作原理,您可以像这样使用prevAll()
:
或
这项工作:
var element = $('.selected').prevAll("li[data-sel='foo']")[0];
这项工作:
var element = $('.selected').prevAll("li[data-sel='foo']")[0];
这不是.prev
的工作方式:。这不是.prev
的工作方式:。我认为.has
不起作用:“将匹配的元素集减少到那些具有与选择器或DOM元素匹配的后代的元素。”。我认为.has
不起作用:“将匹配的元素集减少到那些具有与选择器或DOM元素匹配的后代的元素。”。
var element = $('.selected').prevAll("li[data-sel='foo']")[0];