javascript - 如何选择包装器中的所有元素?

标签 javascript jquery html jquery-selectors

我的 dom 看起来像这样:

<div class="wrapper">
    <span>something</span>
    <span>something else</span>
    <a href="#">link</a>
    <div><b>whatever</b</div>
    <span>another thing</span>
</div>

现在我想获得 <span> 的序列s 从 div.wrapper 的 vale 开始直到 <span> 之外的标签。所以结果如下:

<span>something</span>
<span>something else</span>

有什么办法可以做到这一点吗?

<小时/>

这是我尝试过的:

$(".wrapper").find("span").html();

但它不支持“序列”部分。

最佳答案

正如有人在评论中提到的,您可以使用 nextUntiladdBack 组合来添加第一个匹配节点:

$('.wrapper > span:first').nextUntil(':not(span)').addBack().each(function() {
  console.log( $( this ).html() );
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="wrapper">
    <span>something</span>
    <span>something else</span>
    <span>and more</span>
    <span>and once again</span>
    <span>last one</span>
    <a href="#">link</a>
    <div><b>whatever</b></div>
    <span>another thing</span>
</div>

关于javascript - 如何选择包装器中的所有元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49251536/

相关文章:

php - 运行 PHP 脚本而不更改页面

php - 自定义 php 错误信息 fadein

javascript - 外部 JavaScript 文件不会导致更多的客户端处理吗?

javascript - 如何使用正则表达式和 window.location.href.indexOf() 定位 url 路径中的特定文件夹?

javascript - 如何让这个 ghostType jquery 函数做换行符?

html - CSS:强制列始终具有全高

javascript - 为什么我能够以不同的方式导入我的 JS?

javascript - 我可以用 jQuery 代码模拟点击超链接吗?

javascript - 如何让侧边栏不交互?

html - IE 中表格单元格中的垂直文本