![](/img/trans.png)
[英]Jquery : How can I apply a class to li containing a link with specific id?
[英]How can I click a specific li without an id or class?
我有一个包含子菜单的示例菜单,当我点击其中一个菜单时,它们各自的下拉菜单应该出现。 我想知道如何在不添加id或类的情况下执行此操作,因为在我正在进行的项目中,我被要求将菜单下拉列表更改为可点击而不是悬停,我不想添加ID或每个li中都有一个类,因为它是一个相当长的垂直菜单。
HTML
<ul id="nav">
<li>Home
<ul class="sub-nav">
<li>Johnny</li>
<li>Julie</li>
<li>Jamie</li>
</ul>
</li>
<li class="parent">About
<ul class="sub-nav">
<li>Johnny</li>
<li>Julie</li>
<li>Jamie</li>
</ul>
</li>
<li>Contact</li>
CSS
#nav ul.sub-nav {
display: none;
}
#nav ul.visible {
display: block;
}
jQuery的
$(document).ready(function() {
$('ul li').click(function() {
$('ul li ul').toggleClass('visible');
});
});
不确定这是不是你想要的。
$(document).ready(function() {
$('li').click(function() {
$(this).find('ul').toggleClass('visible');
});
});
但它对我有用
JS
$(document).ready(function() {
$('ul > li').click(function() {
$(this).children('ul').toggleClass('visible');
});
});
试试这个, .children()
将获取当前li元素的直接子元素:
$(document).ready(function() {
$('li').click(function() {
$(this).children('ul').toggleClass('visible');
});
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.