JS комбинация событий
Нужно выполнить код, если текст скопирован и нажата кнопка.
window.addEventListener('DOMContentLoaded', () => {
document.addEventListener('mouseup', function() {
const text = window.getSelection();
window.addEventListener('keypress', function(e) {
alert('Клавиша: ' + e.keyCode + ' Текст: ' + text);
return e.keyCode;
});
return text;
});
});
Есть проблема в моем коде. Условие выполняется несколько раз, что очень странно. И это происходит в случайном порядке.
Ответы (1 шт):
Автор решения: Igor
→ Ссылка
Какое к этому имеет отношение mouseup?
Условие выполняется несколько раз
На каждый mouseup Вы добавляете еще один обработчик keypress.
window.addEventListener('DOMContentLoaded', () => {
const text = window.getSelection();
window.addEventListener('keypress', function(e) {
console.log('Клавиша: ' + e.keyCode + ' Текст: [' + text + ']');
});
});
<span>The walrus and the carpenter</span>