triggerHandler

« Обратно к странице событий

triggerHandler( событие, [данные] )

Вызывает все связанные с элементом обработчики (для указанного типа события) БЕЗ выполнения действия браузера по умолчанию, передачи события или «живых» событий.

Этот метод ведет себя подобно trigger, но есть два главных отличия:

Во-первых, не вызывается действие браузера по умолчанию, вызванное событие не передается и «живые» события также не вызываются.

Во-вторых, событие вызывается только лишь на первом элементе коллекции jQuery. Этот метод возвращает значение вызванного обработчика вместо объекта jQuery. Также, если коллекция jQuery пуста, то возвращается ‘undefined’.

Аргументы:

событие Строка,Событие,Объект
Вызываемый тип события.
данные (необязательно) Массив
Дополнительная информация.
Примеры:

Если Вы вызвали .triggerHandler() на событии focus, то действие браузера по умолчанию по этому событию не будет вызвано, только обработчик события привязанный к событию focus.
    $("#old").click(function(){
      $("input").trigger("focus");
    });
    $("#new").click(function(){
      $("input").triggerHandler("focus");
    });
    $("input").focus(function(){
      $("<span>Focused!</span>").appendTo("body").fadeOut(1000);
    });
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
                    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
  <script src="http://code.jquery.com/jquery-latest.js"></script>

  <script>
  $(document).ready(function(){

    $("#old").click(function(){
      $("input").trigger("focus");
    });
    $("#new").click(function(){
      $("input").triggerHandler("focus");
    });
    $("input").focus(function(){
      $("<span>Focused!</span>").appendTo("body").fadeOut(1000);
    });

  });
  </script>

</head>
<body>
  <button id="old">.trigger("focus")</button>
  <button id="new">.triggerHandler("focus")</button><br/><br/>

  <input type="text" value="To Be Focused"/>
</body>
</html>
Name Type