A triggerHandler metódus

A triggerHandler metódus lehetővé teszi az elemhez kötött összes eseménykezelő elindítását. Hasonlóan működik, mint a trigger metódus, de különbségek vannak közöttük: Az eseménykezelő aktiválódik, de a standard esemény nem indul el. Például a triggerHandler('submit') lefut, de nem indít el submit eseményt. A triggerHandler metódus csak az első elemre hat a halmazban. A triggerHandler által indított események nem terjednek tovább a DOM-elemek hierarchiájában. A triggerHandler nem jQuery objektumot ad vissza, hanem az utoljára meghívott kezelő által visszaadott értéket. Ha egyetlen kezelő sem aktiválódik, akkor undefined-ot ad vissza.

Szintaxis

Első paraméterként átadhatjuk az esemény típusát sztring formájában, második opcionális paraméterként egy tömböt vagy objektumot, amely további paramétereket tartalmaz az eseménykezelő számára:

javascript$(selector).triggerHandler(eseménytípus, [további paraméterek]);

Első paraméterként átadhatunk egy jQuery.Event objektumot is:

javascript$(selector).trigger(esemény, [további paraméterek]);

Példa

Tegyük fel, hogy ha a #test1 azonosítójú gombra kattintunk, a bemeneti mezőnk fókuszt kap, és a konzolra kiíródik a 'Focused' üzenet, más szavakkal - mind a függvény-kezelő, mind a fókusz esemény aktiválódik. Ha a második gombra kattintunk a #test2 azonosítóval, csak a függvény-kezelő aktiválódik, de a bemeneti mező nem kap fókuszt:

html<button id="test1">button1</button>
<button id="test2">button2</button>
<input type="text">
javascript$('#test1').click(function() {
  $('input').trigger('focus');
});

$('#test2').click(function() {
  $('input').triggerHandler('focus');
});

$('input').focus(function() {
  console.log('Focused')
});

Lásd még

  • a trigger metódus,
    amely lehetővé teszi az elemhez kötött összes eseménykezelő elindítását egy adott típusú eseményhez
  • a on metódus,
    amely lehetővé teszi egy eseménykezelő hozzárendelését egy elemhez