web-dev-qa-db-fra.com

Obtenir le nom (type) de l'événement qui a été déclenché (déclenché)

J'ai le code suivant:

$('#my-button').on('click change', function(event) {
    alert("Who fired me, click or change?");
});

Comment savoir si l'événement appelé était "clic" ou "changement"?

43
Marcio Mazzucato

event.type vous obtiendrez ce que vous voulez.

[~ # ~] démo [~ # ~]

Voir aussi: Liste des types d'événements

$("#tipo-imovel").on("click change", function(event){
    console.log(event.type + " is fired");
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<input type="text" id="tipo-imovel" />
56

La solution @Vega est correcte pour les événements simples. Cependant, si vous nommez vos événements, (par exemple player.play), vous devez également obtenir l'espace de noms. Par exemple, disons que je déclenche l'événement:

$('#myElement').trigger('player.play');

Ensuite, pour obtenir le nom complet de l'événement, vous devez procéder comme suit:

$('#myElement').on('player.play', function(e) {
    console.log('Full event name: ' + e.type + '.' + e.namespace);
});
11
Troy Grosfield