Metoden trigger
Metoden trigger giver mulighed for at starte
alle event handlers, der er knyttet til et element
for begivenheder af den angivne type. Den kalder
handler-funktionerne i den rækkefølge, som de ville
blive kaldt af brugeren.
Hvis du ønsker at kalde en event handler, men ikke
udføre standardbegivenheden, så brug metoden
triggerHandler.
Syntaks
Som den første parameter kan vi sende begivenhedstypen som en streng, den anden (valgfri) et array eller et objekt, der indeholder yderligere parametre til at videregive handleren:
$(selector).trigger(begivenhedstype, [yderligere parametre]);
Det er muligt at sende en begivenhed
som et objekt jQuery.Event som den første parameter:
$(selector).trigger(begivenhed, [yderligere parametre]);
Der er en forskel mellem at sende yderligere
parametre til metoden trigger og data til metoden
on. I
det første tilfælde skal data være defineret på tidspunktet for
begivenhedsudførelsen, mens de i det andet tilfælde allerede skal være defineret på tidspunktet for binding af
handler-funktionen.
Eksempel
Ved klik på knappen #first vil værdien kun
stige i det første span, ved
klik på knappen #second - i begge, mens
der simuleres et brugerklik på den første. Funktionen
increase vil øge med 1 tallet,
der sendes til den som en parameter. Ved hjælp af
metoden trigger får vi også begivenheden ved klik
til at udløse i det første span, selvom
vi klikker på knappen #second:
<button id="first">button1</button>
<button id="second">button2</button>
<div><span>0</span></div>
<div><span>0</span></div>
button {
margin: 10px;
}
div {
margin-left: 10px;
font-weight: bold;
}
span {
color: green;
}
$('#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);
}
Se også
-
metoden
on,
som giver mulighed for at binde en event handler til et element -
metoden
triggerHandler,
som giver mulighed for at starte alle event handlers, knyttet til et element -
objektet
event,
som indeholder information om begivenheden -
metoden
submit,
som giver mulighed for at binde en handler til JavaScript-begivenheden submit eller starte denne begivenhed