Jquery-events-triggerhandler

提供:Dev Guides
移動先:案内検索

triggerHandler(event、[data])メソッド

説明

  • triggerHandler(event、[data])*メソッドは、ブラウザーのデフォルトアクション、バブリング、またはライブイベントを実行せずに、特定のイベントタイプの要素でバインドされたすべてのイベントハンドラーをトリガーします。

このメソッドは、2つの主要な例外を除いて、トリガーメソッドと非常によく似た動作をします-

  • 最初-デフォルトのブラウザアクションはトリガーされず、トリガーされたイベントはバブルせず、ライブイベントはトリガーされません。
  • Second -イベントは、jQueryコレクション内の最初の要素でのみトリガーされます。

このメソッドは、チェーン可能なjQueryオブジェクトではなく、トリガーされたハンドラーの戻り値を返します。

構文

このメソッドを使用するための簡単な構文は次のとおりです-

selector.triggerHandler( event, [data] )

パラメーター

これは、この方法で使用されるすべてのパラメータの説明です-

  • event -トリガーするイベントオブジェクトまたはタイプ。
  • data -これはオプションのパラメーターであり、引数として(イベントオブジェクトの後に)イベントハンドラーに渡す追加データを表します。

以下は、このメソッドの使用方法を示す簡単な例です-

<html>
   <head>
      <title>The jQuery Example</title>
      <script type = "text/javascript"
         src = "https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js">
      </script>

      <script type = "text/javascript" language = "javascript">
         $(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>

これにより、次の結果が生成されます–