[изменить: добавить более подробную информацию о сценарии]Есть ли способ выгрузить обработчик событий, созданный с помощью window.addEventListener?
Я создаю инструмент, который приложение может включать в себя с помощью тега сценария; этот инструмент добавляет оверлей к их приложению; этот оверлей включает в себя холст и элементы управления, которые я визуализирую на холст. Я хотел бы, чтобы инструмент мог фиксировать все входные события и обрабатывать их (если они встречаются над одним из визуализированных элементов управления) и прекращать распространение приложения или передавать их в приложение (если не происходит над одним из отображаемых контроль).
Я могу выгрузить все события ввода хоста приложения, за исключением, когда приложение регистрирует событие в окне с помощью захвата, следующим образом:
window.addEventListener("mousedown", (e) => console.log("hi"), true);
Есть ли способ для моего инструмента, чтобы ввести функцию, звонит до этого?
Можете ли вы уточнить, что вы пытаетесь сделать? Мне было непонятно, почему вы не можете просто вызвать свою «введенную» функцию в функции обратного вызова до «console.log». – mrlew
Уверенная вещь; Я пишу инструмент, который приложение javascript может включать в себя через тег. Этот инструмент обеспечивает наложение над приложением путем добавления холста к DOM. Я хотел бы, чтобы инструмент мог перехватывать все входные события до того, как приложение получило их, чтобы, если пользователь нажимает на одну из отображаемых кнопок в наложении, я могу отменить распространение. Однако, если приложение регистрирует событие в окне с использованием захвата, я не могу понять, как «попасть в начало» обратного вызова приложения. (edit: для ясности - в этом случае это приложение-хозяин, добавляющее вышеприведенное событие, а не мой инструмент) –