Фильтрация события keyup документа к определенному элементу без селектора - PullRequest
0 голосов
/ 30 марта 2019

Я динамически создаю элементы, которые не имеют уникального дескриптора, поэтому я не могу действительно создать селектор, который будет передан «on» для фильтрации.

Похоже, «on» не делаетпринять элемент jQuery для селектора, в соответствии с документами.Я не понимаю, почему нет, поскольку селектор строк должен быть обработан (что приводит к накладным расходам), когда я мог бы непосредственно предоставить рассматриваемый элемент.

Я что-то упускаю здесь из-за чего-то очевидного?

$(document).on('keyup', elm, function(ev){ console.log( 'keyup on', ev.target ) });

По сути, я хочу, чтобы этот экземпляр события срабатывал только в том случае, если elm генерирует событие keyup.

EDIT

Забыл некоторый контекст:

  • Элемент еще не находится в DOM, он создан в памяти, и я пытаюсь настроить все события там.
  • Я пытался привязать событие keyup непосредственно к элементу, но этоне будет стрелятьНе уверен почему.Я предположил, может быть, потому что его еще не было в DOM.
  • Элемент не является input / textarea, я полагаюсь на contenteditable / user-modify, чтобы разрешить ввод.

ЗАКЛЮЧЕНИЕ

  • Проблема была вызвана моим css.Похоже, что если родитель имеет пользовательские изменения, событие keyup ребенка не сработает.Чтобы быть справедливым, пользовательские изменения должны быть нацелены как можно скорее, чтобы избежать редактирования DOM.

1 Ответ

0 голосов
/ 30 марта 2019

Проблема была вызвана моим css. Похоже, что если родитель имеет пользовательские изменения, событие keyup ребенка не сработает. Чтобы быть справедливым, пользовательские изменения должны быть как можно более точными, чтобы избежать редактирования DOM.

...