Mavrikii
Platinum Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору vs6262 Цитата: JS сделать вызов функции при нажатии клавиши "c/C" лат. + mouse Left doubleclick ? | определить флаг, который показывает, что нажата нужная клавиша. повесить обработчик события нажатия клавиши (keydown), отпускания (keyup) и клика. если сработал клик, а клавиша не нажата - пропустить, если клавиша нажата и нужная, то выставить флаг, тогда при обработке клика делаем что нужно. после отпускания клавиши снять флаг и клик снова не будет срабатывать. работать будет, ессно, только когда у окна с обработчиками есть фокус. ps: но скорее всего не судьба, потому что слишком много хотите от js. по тесту - если держать нажатой клавишу, то события клика не вызываются. хотя, это у меня тачпад что то странно на ноуте себя ведет. вот Код: var doc = document, flag = false; doc.addEventListener('keydown', function(e) { var code = window.event ? e.keyCode : e.which; flag = String.fromCharCode(code).toLowerCase() == 'c'; }); doc.addEventListener('keyup', function() { flags = false; }); doc.addEventListener('dblclick', function() { if (flag) console.log('c + dbl click'); }); |
| Всего записей: 15700 | Зарегистр. 20-09-2014 | Отправлено: 06:17 30-07-2018 | Исправлено: Mavrikii, 06:53 30-07-2018 |
|