Захват табуляции с помощью textArea приводит к тому, что ловушка покидает контейнерHtml

Программисты Html
Ответить
Anonymous
 Захват табуляции с помощью textArea приводит к тому, что ловушка покидает контейнер

Сообщение Anonymous »

Я выполняю захват фокуса с помощью клавиши табуляции, и когда я выхожу из текстовой области, табуляция покидает контейнер. Если вместо этого я использую ввод, то захват фокуса работает... Есть идеи, почему захват фокуса не работает с textarea?

Код: Выделить всё

const container = document.getElementById("SpecialInstructionsWindow");

const getFocusables = () => {
return Array.from(
container.querySelectorAll(`textarea:not([disabled]), button:not([disabled]`)
).sort((a, b) =>
(a.dataset.focusOrder ?? 9999) - (b.dataset.focusOrder ?? 9999)
);
};

container.addEventListener("keydown", (e) => {
if (e.key !== "Tab") return;

const focusables = getFocusables();
if (focusables.length === 0) return;

const first = focusables[0];
const last = focusables[focusables.length - 1];

// TAB (forward)
if (!e.shiftKey && document.activeElement === last) {
first.focus();
e.preventDefault();
}
});

Код: Выделить всё




Special Instructions












Подробнее здесь: https://stackoverflow.com/questions/798 ... -container
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Html»