我在jquery(或CSS3吗?!)中寻找一种方法来检查所有.vertical类元素,如果在OR之前或之后还有另一个具有相同类.vertical的元素。

请检查,我想在提到的元素上添加一个.solo类:

<figure>
<figure class="vertical" ADD SOLO CLASS>
<p>
<figure>
<h1>
<p>
<figure class="vertical">
<figure class="vertical">
<figure>
<p>
<figure class="vertical">
<figure class="vertical">
<figure class="vertical">
<figure>
<figure class="vertical">
<figure class="vertical">
<figure>
<figure class="vertical" ADD SOLO CLASS>
<figure>
<figure>


非常感谢你的帮助。

最佳答案

一种可能的方法:

$('.vertical').filter(function() {
  var $this = $(this);
  if (!
    ( $this.next().is('.vertical') || $this.prev().is('.vertical') )
  ) {
    $this.addClass('solo');
  }
});


Demo。注意更改:我已经关闭了所有这些<figure>元素(以及其他一些元素,例如<h1>),因为与<p>不同,它们确实需要关闭标签。

关于jquery - jQuery搜索特定元素并添加类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22833299/

10-13 07:43