我想检查页面上的元素是否包含文本短语,它显示第二个隐藏容器?例如,“#product-description”包含“best Gift”,然后在产品图像上显示一个隐藏容器“#best-gift-graphic”。我已经找到了绕过这个问题的答案,并解决了各个部分,但我似乎无法将它们放在一起。
我找到了隐藏包含文本的元素的解决方案:
<script type="text/javascript">
$(document).ready(function () {
$("div p:contains('text')").parent('div').hide();
});
</script>
我需要将显示/隐藏应用到第二个容器,而不是包含目标短语的容器。对于 jquery 来说是个新手,只是想了解语法。谢谢期待。
最佳答案
您需要检查长度以查看是否存在任何项目,然后可以使用 .hide()
隐藏相应的元素(如果有):
if ($('#product-description:contains("best gift")').length) { // check if this exists
$('#best-gift-graphic').hide(); // hide this
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="product-description">best gift</div>
<div id="best-gift-graphic">this is hidden</div>
关于javascript - 如果另一个 div 包含 jQuery 中的特定字符串,则隐藏该 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54465011/