gpt4 book ai didi

javascript - 如何忽略 HTML 匹配中的隐藏对象?

转载 作者:行者123 更新时间:2023-12-01 00:20:43 25 4
gpt4 key购买 nike

我正在尝试匹配可见对象的文本,但忽略不可见的文本。顺便说一句,我需要 HTML 代码。

这是我的 codepen .

这是我的 HTML:

<div class="main">
<div class="a">Hello</div>
<div class="hid">Hello</div>
<div class="b">Hello</div>
<div class="hid2">Hello</div>
<div class="c">Hello</div>
<div class="hid3">Hello</div>
<div class="hid4">Hello</div>
</div>

我的CSS:

.hid, .hid2, .hid3, .hid4{
display: none;
}

我的 JavaScript:

var regEx = /Hello/g;

var main = $('.main').html();

var matches = main.match(regEx);

console.log(matches);

实际上我想排除不可见元素而不将它们从页面中删除。我想要这些 HTML 代码的结果:

<div class="a">Hello</div>
<div class="b">Hello</div>
<div class="c">Hello</div>

我不想删除隐藏的对象,因为我将以交互方式使用它们。我只是想将他们排除在比赛之外。我们可以使用 jQuery。

从现在开始谢谢你。

最佳答案

您可以尝试使用 :visible 选择器,例如 $('.main div:visible')

var visible = $('.main div:visible').map((_,i) => i.outerHTML).get();
console.log(visible);
.hid, .hid2, .hid3, .hid4{
display: none;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="main">
<div class="a">Hello</div>
<div class="hid">Hello</div>
<div class="b">Hello</div>
<div class="hid2">Hello</div>
<div class="c">Hello</div>
<div class="hid3">Hello</div>
<div class="hid4">Hello</div>
</div>

关于javascript - 如何忽略 HTML 匹配中的隐藏对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59453020/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com