Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Сохранение DOM положения элемента через 2 родителей (https://javascript.ru/forum/events/79400-sokhranenie-dom-polozheniya-ehlementa-cherez-2-roditelejj.html)

Sonic911 03.02.2020 17:05

Сохранение DOM положения элемента через 2 родителей
 
Привет

Есть трехуровневое меню, где навигация по сайту осуществляется только последним уровнем. Например:

Перечень-> (Отделы/Склады)->(Команды/Начальство/Помощь)

Нужно запомнить на что из последнего был клик и сохранить положение меню. Слово "перечень" для примера, оно динамическое и берется из базы - как я понял нужно положение DOM через parent.

рони 03.02.2020 17:22

Sonic911,
в localStorage сохраните индекс или hash кликнутого элемента и при загрузке откройте всю цепочку вверх через parentNode от элемента c данным индексом/hash.

Sonic911 03.02.2020 17:29

что-то вроде?

var pos = $('#clicked').document.documentElement.parentNode;
var pos2 = pos.document.documentElement.parentNode;
localStorage.setItem(pos2,"saved");

рони 03.02.2020 17:35

Sonic911,
блок - схема

click => index from (Команды/Начальство/Помощь) => localStorage.setItem("index", index);

load =>
index = localStorage.getItem('index');
elem = (Команды/Начальство/Помощь)[index];
while (elem != menu) elem = elem.parentNode; elem.classList.add("show")


Часовой пояс GMT +3, время: 09:21.