Metoda trigger

Metoda trigger omogoča zagon vseh obdelovalcev dogodkov, vezanih na element za dogodke določenega tipa. Pokliče funkcije-obdelovalce v vrstnem redu, v katerem bi jih poklical uporabnik. Če želite poklicati obdelovalec dogodkov, vendar ne izvesti standardnega dogodka, potem uporabite metodo triggerHandler.

Sintaksa

Kot prvi parameter lahko predamo tip dogodka v obliki niza, drugi (neobvezen) polje ali objekt, ki vsebuje dodatne parametre za posredovanje obdelovalcu:

javascript$(selektor).trigger(tip dogodka, [dodatni parametri]);

Lahko kot prvi parameter predamo dogodek v obliki objekta jQuery.Event:

javascript$(selektor).trigger(dogodek, [dodatni parametri]);

Obstaja razlika med posredovanjem dodatnih parametrov metodi trigger in podatkov metodi on. V prvem primeru morajo biti podatki definirani v času izvajanja dogodka, v drugem pa že v času vezave funkcije-obdelovalca.

Primer

Ob pritisku na gumb #first se bo vrednost povečevala samo v prvem spanu, ob pritisku na gumb #second - v obeh, pri čemer v prvem posnemamo klik uporabnika. Funkcija increase bo povečala za 1 število, ki ga prejme kot parameter. S pomočjo metode trigger povzročimo, da se sproži tudi dogodek ob kliku v prvem spanu, čeprav pritisnemo na gumb #second:

html<button id="first">button1</button>
<button id="second">button2</button>
<div><span>0</span></div>
<div><span>0</span></div>
cssbutton {
  margin: 10px;
}

div {
  margin-left: 10px;
  font-weight: bold;
}

span {
  color: green;
}
javascript$('#first').click(function() {
  increase($('span').first());
});

$('#second').click(function() {
  $('#first').trigger('click');
  increase($('span').last());
});

function increase(str) {
  let num = parseInt(str.text(), 10);
  num.text(num + 1);
}

Glejte tudi

  • metoda on,
    ki omogoča vezavo obdelovalca dogodkov na element
  • metoda triggerHandler,
    ki omogoča zagon vseh obdelovalcev dogodkov, vezanih na element
  • objekt event,
    ki vsebuje informacije o dogodku
  • metoda submit,
    ki omogoča vezavo obdelovalca na JavaScript dogodek submit ali zagon tega dogodka