Comment obtenir l'élément d'un événement jQuery on () à l'aide d'une fonction de flèche ES6?

Avant d'utiliser les fonctions de flèche ES6, si je voulais obtenir l'élément d'un événement jQuery on() click, alors je pourrais faire quelque chose comme ceci:

 $(document).on('click', '.inserted-el', function(event) { console.log(this); }); 

Cependant, avec la fonction flèche, je ne peux plus accéder à this de cette façon. Comment puis-je saisir l'élément sur lequel j'ai été cliqué?

Vous pouvez utiliser event.currentTarget pour se référer à l'élément cible du gestionnaire

 $(document).on('click', '.inserted-el', function(event) { snippet.log('old -> ' + this.innerHTML + ':' + event.currentTarget.innerHTML); }); $(document).on('click', '.inserted-el', (event) => { snippet.log('new -> ' + this.innerHTML + ':' + event.currentTarget.innerHTML); }); 
 <!-- Provides the `snippet` object, see http://meta.stackexchange.com/a/242144/134069 --> <script src="http://tjcrowder.github.io/simple-snippets-console/snippet.js"></script> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <button class="inserted-el">1</button> <button class="inserted-el">2</button> 
 `event.currentTarget` 

Est votre ami ici.

La raison pour laquelle vous ne pouvez pas l'accéder comme «ceci» est parce que les fonctions de flèches ont la même chose que celle de leur parent.

Vous devriez également connaître event.target

http://joequery.me/code/event-target-vs-event-currenttarget-30-seconds/