jQuery trigger() method

event.preventDefault() and return false

jQuery trigger() method triggers the default behavior of a specified event for a selected elements.

Although the .trigger() simulates an event activation by completing with a synthesized event object, that does not perfectly replicate a naturally-occurring event.

Suppose you are trying to trigger an event on the anchor. So in this case you can call it by:

$(document).ready(function(){
$("a").trigger("click");
});

For a multiple anchor you can click the last anchor using:

$('.menu a').last().trigger('click');

The difference between trigger() and triggerHandler() method is that triggerHandler() does not trigger the default behavior of the event.

Read Also: Why use jQuery on() instead of click()

There are four differences between .trigger() and .triggerHandler():

  1. In jQuery object, .triggerHandler() only triggers the event on the first element.
  2. .triggerHandler() cannot be chained and this returns the value which is returned by the last handler, not a jQuery object.
  3. .triggerHandler() will not cause the default behavior of the event.
  4. Events triggered by .triggerHandler(), will not bubble up the DOM hierarchy. Handlers on the single element will fire only.

Do not use .trigger() for simply executing specific functions.

When you are using this method, you should not use simply for calling a function that was bound as a click handler. But, you should store the function you need to call in a variable, passing the variable name when you do your binding also. Then, you can call the function itself whenever you want, without the need for .trigger().

Leave a Reply

Your email address will not be published. Required fields are marked *