Я потратил лучшую половину последнего часа, пытаясь выяснить, что заставило мою функцию JavaScript выполнить «дважды», поскольку я все видел все, что дублировалось в консоли разработчика.onKeyUp, вызывающий код для выполнения дважды
я, наконец, проследить его на этот кусок кода:
<textarea onkeyup="parseInput(this)"></textarea>
Целью этого является, чтобы позволить пользователю, чтобы вставить данные в текстовое поле, то есть функция parseInput()
бежать, как только они делают. проблема заключается в том, что как только они нанесут CTRL+V
, функция запускается. Затем, когда они RELEASE CTRL
, код снова запускается (хотя данные, которые он отправляет, являются точным дубликатом только что отправленных данных.)
Это вызывает двойную активацию моей функции. Я понимаю, что JavaScript должен иметь какой-то способ закодировать следующую логику, но я не знаю, что это такое:
Если ключи CTRL отпущены, я не запускаю следующий бит кода.
Может ли кто-нибудь указать мне правильное направление?
'keypress' .......... – adeneo
Как насчет' onpaste'? –
Возможный дубликат http://stackoverflow.com/questions/22778854/ctrl-v-paste-triggers-jquerys-keyup-function-twice –