Показать сообщение отдельно
  #11 (permalink)  
Старый 10.05.2021, 19:21
Кандидат Javascript-наук
Отправить личное сообщение для fori Посмотреть профиль Найти все сообщения от fori
 
Регистрация: 27.01.2021
Сообщений: 117

Тоесть, если таб пытается поставить фокус на елемент который пренадлежит div-у — e.preventDefault(), если таб пытается установить фокус на елемент который не принадлежит div-у — (пропустить событие и разрешыть поставить фокус на такой елемент)
Узнать принадлежит ли елемент родителю, таб на который надо блокировать можно по функции (аналог jquery-ного варианта parentHas)
parentsHas(el, target) {
      let current = el;
      while (
        current.parentNode != null &&
        current.parentNode != document.documentElement
      ) {
        if (current == target) {
          return true;
        } else {
          current = current.parentNode;
        }
      }
      return false;
    },
Ответить с цитированием