JSFiddle - React, Tailwind, and code Playground
HTML
Ouvrez F12 pour suivre les message dans l'onglet « console »
<br><br>
Clique moi dessus pour que je prennes le focus de ton navigateur puis appuie sur `ctrl + s` simultanément.
<br><br>
Clique sur l'input pour qu'elle prenne le focus de ton navigateur puis appuie sur `ctrl + s` simultanément.
<input id="input" type="text">
JavaScript
var keys = {},
ctrl = true;
window.addEventListener('keydown', function (e) {
e = e || event;
keys[e.which] = true;
ctrl = e.ctrlKey;
});
window.addEventListener('keyup', function (e) {
e = e || event;
keys[e.which] = false;
ctrl = false;
});
// Quand tu veux tester quelque chose, quelque part.
// -------------------------
// Exemple sur toute la page
window.addEventListener('keydown', function (e) {
if ((ctrl && keys[83]) || (ctrl && keys[115])) {
e.preventDefault();
console.log("ctrl + s appuyé de partout !");
}
});
// Exemple depuis un input
window.addEventListener('keydown', function (e) {
var input = document.getElementById('input');
if (input === document.activeElement && ((ctrl && keys[83]) || (ctrl && keys[115]))) {
e.preventDefault();
console.log("ctrl + s appuyé de l'input !");
}
});