ul>li").click(fu-6ren">
gpt4 book ai didi

javascript - Jquery .has ("tag") 过滤器显示没有元素的标签有它们

转载 作者:行者123 更新时间:2023-11-30 11:32:50 25 4
gpt4 key购买 nike

我试图通过 Jquery 过滤包含 ul 标签的 li 标签。 Jquery .has("tag") 过滤器显示没有元素的标签有它们。

Jquery code

$(".mobile_menu>ul>li").click(function(event) {
/* Act on the event */
console.log("clicked");
if($(this).has(".ul")){
console.log("it has ul");
console.log($(this));
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="mobile_menu">
<div class="title">Title</div>
<ul>
<li>1</li>
<li>2
<ul class="none">
<li>1</li>
<li>2</li>
</ul>
</li>
<li>3</li>
</ul>
</div>

最佳答案

你差不多明白了,使用 $(this).has("ul").length > 0

首先从.has(".ul")中删除点自 ul不是 class .

<- credit to T.J.Crowder ->

你甚至可以让它更短一点并使用 $(this).has("ul").length

has返回一个 jQuery 对象,而不是一个标志。jQuery 对象总是真实的。

$(".mobile_menu>ul>li").click(function(event) {
/* Act on the event */
console.log("clicked");
if ($(this).has("ul").length > 0) {
console.log("it has ul");
console.log($(this));
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="mobile_menu">
<div class="title">Title</div>
<ul>
<li>1</li>
<li>2
<ul class="none">
<li>1</li>
<li>2</li>
</ul>
</li>
<li>3</li>
</ul>
</div>

关于javascript - Jquery .has ("tag") 过滤器显示没有元素的标签有它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45629475/

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