我正在尝试构建响应式导航,并希望将 <span> 附加到所有包含子菜单 <ul> 的顶级菜单项。出于某种原因,这只是将跨度附加到所有项目,有人可以建议为什么吗?
这是标记:
<nav class="nav">
<ul class="nav-list">
<li class="nav-item">
<a href="#">Home</a>
<ul class="nav-submenu">
<li class="nav-submenu-item">
<a href="#">Submenu item 1</a>
</li>
<li class="nav-submenu-item">
<a href="#">Submenu item 2</a>
</li>
<li class="nav-submenu-item">
<a href="#">Submenu item 3</a>
</li>
<li class="nav-submenu-item">
<a href="#">Submenu item 4</a>
</li>
</ul>
</li>
<li class="nav-item">
<a href="#">About</a>
</li>
<li class="nav-item">
<a href="#">Services</a>
</li>
<li class="nav-item">
<a href="#">Portfolio</a>
</li>
<li class="nav-item">
<a href="#">Testimonials</a>
</li>
<li class="nav-item">
<a href="#">Contact</a>
</li>
</ul>
</nav>
所以你可以看到第一个项目有一个下拉菜单,我想动态地将一个 span 元素附加到每个包含子菜单的 <li> 中。
和脚本(jQuery):
$.each($('.nav-item'), function (index, value) {
if ($('.nav-item').children('ul').length > 0) {
$(this).append($('<span class="nav-click"></span>'));
}
});
帮助表示赞赏!