У меня есть код с большим количеством подменю, которые имеют одно и то же имя класса.
Здесь структура:
.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')
нового элемента до тех пор, пока его длина не станет нулевой (родителей с этим классом больше нет, поэтому он должен быть самым верхним). Однако я думаю, что для этого должен быть более практичный подход.