Suivi des touches modificateurs en JavaScript
Avec l'objet Event, on peut savoir
si les touches Ctrl,
Alt et Shift étaient enfoncées
au moment de l'événement. Cela se fait
à l'aide des propriétés ctrlKey, altKey
et shiftKey - elles ont une valeur true
ou false selon que cette touche était
enfoncée au moment de l'événement ou non.
Voyons un exemple. Supposons que nous ayons le bouton suivant :
<button id="elem">text</button>
Lors d'un clic sur le bouton, nous afficherons un message
indiquant si l'une des touches Ctrl,
Alt et Shift était enfoncée :
let elem = document.querySelector('#elem');
elem.addEventListener('click', function(event) {
if (event.ctrlKey) {
console.log('Ctrl enfoncé');
}
if (event.altKey) {
console.log('Alt enfoncé');
}
if (event.shiftKey) {
console.log('Shift enfoncé');
}
});
Étant donné un élément. Faites en sorte qu'au clic
sur celui-ci, il devienne rouge, mais seulement
si la touche Alt est enfoncée au moment du clic.
Supposons que vous ayez une liste ul avec des balises
li :
<ul id="elem">
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
<li>text</li>
</ul>
Faites en sorte que lors d'un clic sur n'importe quel li,
le nombre 1 soit ajouté à la fin de son texte
si la touche Ctrl est enfoncée, et le nombre
2 si la touche Shift est enfoncée.