cheerio - 选择彼此相邻的两个元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cheerio - 选择彼此相邻的两个元素相关的知识,希望对你有一定的参考价值。
如何选择a
元素,但只有当两个相邻时?
<div>
<a></a> <---- without this one
<irrelevant></irrelevant>
<a></a> <---- These two only
<a></a> <----
<irrelevant></irrelevant>
<a></a> <---- and without these three
<a></a>
<a></a>
<irrelevant></irrelevant>
<a></a> <---- and without this one
</div>
答案
我不知道cheerio,但在jQuery你可以这样做(虽然它的hacky和可怕):
$("div a").filter(function( index ) {
var $this = $(this);
return (
$this.next("a").length>0 && //next is an a
$this.next("a").next("a").length==0 && //next , next is not an a
$this.prev("a").length==0 // prev is not an a
);
})
.css( "background-color", "red" )
.next("a")
.css( "background-color", "red" );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
<a>n</a>
<irrelevant></irrelevant>
<a>y</a>
<a>y</a>
<irrelevant></irrelevant>
<a>n</a>
<a>n</a>
<a>n</a>
<irrelevant></irrelevant>
<a>n</a>
</div>
以上是关于cheerio - 选择彼此相邻的两个元素的主要内容,如果未能解决你的问题,请参考以下文章
仅css:将两个项目彼此相邻放置并同时做两个!仅在必要时包装