【发布时间】:2013-02-09 11:27:12
【问题描述】:
我的代码包含许多共享相同类名的子菜单。
这是一个结构:
.menu
.sub-menu
.sub-menu
.sub-menu
.sub-menu
.sub-menu
.sub-menu
.elem
.elem
.sub-menu
请注意,.sub-menu 的深度可能是无限的。
那么我该如何实现:当点击.elem 时,我想向上遍历DOM,直到到达最顶端的.sub-menu 并对其应用样式。我知道.closest() 和.parent() 和.find(),但我不知道jQuery 是否有.topMost(selector) 之类的功能?
我能想到的唯一方法可能是运行一个循环并遍历新元素的.closest('.sub-menu'),直到它的长度为零(这个类没有更多的父级,所以它必须是最顶层的)。但是,我认为应该有一个更实用的方法。
【问题讨论】: