Моя проблема в том, что мой код работает на консоли при установке точки останова в указанной строке c, но не работает при запуске сценария или с точкой останова в любой другой строке.
У меня есть поле ввода с прослушивателем keyup, которое запускается даже при вставленных входах, поэтому я пытаюсь разработать решение, которое распознает вставленные вводы и удаляет при этом прослушиватель keyup.
Код хорошо работает в консоли, когда Я установил точку останова в строке, которая удаляет прослушиватель keyup, но она не работает, когда я непосредственно запускаю скрипт на странице или с точкой останова в любой другой строке. Я пытался «DOMContentLoaded», window.load, проверяя «document.readyState», перемещая мои переменные и функции, но все равно ничего не работает.
//Recognizes pasted inputs and calls to remove "Keyup" listener
searchInput.onpaste = function remove() {keyupListener();};
//Removes "Keyup" listener
function keyupListener() {
//Here's where it works when I set a Breakpoint
searchInput.removeEventListener('keyup', dynamicPagination);
}
// Keyup listener
searchInput.addEventListener('keyup', () => {
dynamicPagination();
});
searchButton.addEventListener('click', () => {
dynamicPagination();
});
Поведение кода, когда он не работает, заключается в том, что он не читает removeEventListener и запускает обработчик keyup с вставленным вводом.
Меня интересуют только ванильные JS решения.