我有这个 HTML 结构:
<ul>
<li class="cat-item">
<a href="link.html">Link</a>
</li>
<li class="subcat-item" style="display: none">
<ul class="subcat-list">
</ul>
</li>
<li class="cat-item">
<a href="link2.html">Link2</a>
</li>
<li class="subcat-item" style="display: none">
<ul class="subcat-list">
<li class="subcat-list-item"><a href="link3.html">Link 3</a></li>
<li class="subcat-list-item"><a href="link4.html">Link 4</a></li>
<li class="subcat-list-item"><a href="link5.html">Link 5</a></li>
</ul>
</li>
</ul>
现在我想做的是:
如果(在 li.cat-item 之后,类 .subcat-item 的下一个元素具有子 ul.subcat-list 并且此 ul.subcat-list 具有子级)当您单击此 .cat-item 时,li.subcat-item slideToggles 和返回 false(页面未重新加载)
否则,当您单击此 .cat-item 时,会出现以下功能:window.location = this.href;
很简单:如果类别有子类别 slideToggle 带有子类别链接的列表。如果类别没有子类别,请转到类别链接。
有什么帮助吗?
// 编辑
感谢您的回答。还有一个我无法处理的步骤。这是HTML:
<ul>
<li class="cat-item">
<a href="link.html">Link</a>
</li> <!-- cat-item -->
<li class="subcat-item" style="display: none;">
<ul class="subcat-list">
</ul> <!-- subcat-list -->
</li> <!-- subcat-item -->
<li class="cat-item">
<a href="link.html">Link</a>
</li> <!-- cat-item -->
<li class="subcat-item" style="display: none;">
<ul class="subcat-list">
<li class="subcat-list-item">
<a href="link.html">Link</a>
</li> <!-- subcat-list-item -->
<li class="sub-subcat-item" style="display: none;">
<ul class="sub-subcat-list">
</ul> <!-- sub-subcat-list -->
</li> <!-- sub-subcat-item -->
<li class="subcat-list-item">
<a href="link.html">Link</a>
</li> <!-- subcat-list-item -->
<li class="sub-subcat-item" style="display: none;">
<ul class="sub-subcat-list">
<li class="sub-subcat-list-item">
<a href="link.html">Link</a>
</li> <!-- sub-subcat-list-item -->
<li class="sub-subcat-list-item">
<a href="link.html">Link</a>
</li> <!-- sub-subcat-list-item -->
</ul> <!-- sub-subcat-list -->
</li> <!-- sub-subcat-item -->
</ul> <!-- subcat-list -->
</li> <!-- subcat-item -->
</ul>
所以现在:当用户点击 .subcat-list-item 并且下一个具有 .sub-subcat-item 类的元素没有子元素(没有 li 的 ul)时,他应该转到 .subcat-list-item url。否则 .sub-subcat-item 应该滑动切换。