使用 JQuery 在页面上的第一个元素中选择第一个出现的子项?

Posted

技术标签:

【中文标题】使用 JQuery 在页面上的第一个元素中选择第一个出现的子项?【英文标题】:Selecting the First Appearing Child Within the First Element On a Page with JQuery? 【发布时间】:2018-08-01 06:18:31 【问题描述】:

我想在.load() 方法中使用gt() 选择器。这可以实现吗?

目前,我正在寻找一种解决方案,允许我在调用 .entry:first 后应用 .children(':gt(0)') 选择器。

这是我目前的进展:

$("#embed-content").load("https://URL.com/page/ .entry:first .children(':gt(0)')", function(data) );

注意,加载源的第一个元素并不总是div,也不总是包含相同的 id 或类,这些方面会有所不同。

【问题讨论】:

你想用:gt(0)做什么? 我正在尝试从加载的页面源中选择第一个 .entry div 中的第一个子元素。第一个孩子不是统一的,并且会有所不同,因此它并不总是一个 div。 :gt(0) 表示“大于 0”,如 不是第一个。你是说先吗? 是的,只有第一个子元素。 我已经更新了下面的答案。 【参考方案1】:

.entry:first .children(':gt(0)') 将是 .entry:first > :gt(0)> 是直接子组合子,当然 :gt(0) 是“大于索引 0”。

我不认为那是你想要的。您在评论中说:

我正在尝试从加载的页面源中选择第一个 .entry div 中的第一个子元素。

:gt(0)跳过第一个这样的元素,而不是选择它。要选择它:.entry:first > :first:

$(".entry:first > :first").css(
  color: "green",
  fontWeight: "bold"
);
<div class="entry">
  <span>first child of first .entry</span>
  <span>second child of first .entry</span>
</div>
<div class="entry">
  <span>first child of second .entry</span>
  <span>second child of second .entry</span>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>

【讨论】:

太棒了,这成功了!我不确定我是如何使用gt()...无论如何,感谢您的帮助。

以上是关于使用 JQuery 在页面上的第一个元素中选择第一个出现的子项?的主要内容,如果未能解决你的问题,请参考以下文章

简单的 jQuery 选择器只选择 Chrome 中的第一个元素..?

react怎么获取offsetleft

使用 jQuery 在 iframe 中选择一个元素

jquery学习总结

jquery如何获取第一个或最后一个子元素

jQuery选择器删除满足两个条件的表行