jquery 在特定元素后查找Div

yhived7q  于 2023-06-05  发布在  jQuery
关注(0)|答案(2)|浏览(177)

我可以用.class textimage-text获取元素中的所有HTML。这个很好用。然后,我需要在下面的Div中获取HTML,它没有ID或Class。
示例

<div class="textimage-text">
  <p>Some Text goes here</p>
</div>
<br>
<div>
  <p>Some additional Text goes here</p>
</div>

$.get(item.url, function (html) {

  var body = $(html).find(".textimage-text").html(); // <- this works
  var more= $(html).find(".textimage-text").next("div").html(); // <- this does not work
6pp0gazn

6pp0gazn1#

使用通用同级选择器~(例如:~ div查找下一个与this同级的div)

$(html).find(".textimage-text ~ div").html();

$('.textimage-text ~ div').html()

通用兄弟选择器

一般的兄弟组合子(~)将两个选择器分开,只有当第二个元素跟在第一个元素之后(尽管不一定是立即),并且两者都是同一个父元素的子元素时,才匹配第二个元素。
示例:

console.log($('body').find('.textimage-text').html());
console.log($('body').find('.textimage-text ~ div').html());

console.log($('.textimage-text').html());
console.log($('.textimage-text ~ div').html());
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="textimage-text">
  <p>Some Text goes here</p>
</div>
<br>
<div>
  <p>Some additional Text goes here</p>
</div>
kcugc4gi

kcugc4gi2#

添加额外的**.next()并删除next函数中的“div”参数,当前您选择的是br**

var more= $(html).find(".textimage-text").next().next().html()

相关问题