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 :

html<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 :

javascriptlet 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é');
  }
});
Задание 1

É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.

Задание 2

Supposons que vous ayez une liste ul avec des balises li :

html<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.