動的に作成された HTML 要素では、イベント処理で課題が生じることがよくあります。クラス .myclass の要素に jQuery を使用してアタッチされたイベント ハンドラーがあるシナリオを考えてみましょう:
$(function(){ $(".myclass").click( function() { // do something }); });
これは既存の要素にはうまく機能しますが、動的に作成された要素はイベント ハンドラーを継承しません。たとえば、.myclass クラスの新しいリンクが後で追加された場合:
$(function(){ $("#anchor1").click( function() { $("#anchor1").append('<a>
新しく作成されたリンク「test4」には、クリック イベント ハンドラーがアタッチされていません。これに対処するために、jQuery は '.on()' メソッドを使用したソリューションを提供します。
$('body').on('click', 'a.myclass', function() { // do something });
このメソッドは、イベント ハンドラーを親要素 (この場合は 'body' など) にアタッチし、一致する要素をターゲットにします。セレクター ('.myclass')。したがって、「body」内の .myclass クラスを持つ現在および将来のすべての要素には、イベント ハンドラーがアタッチされます。
このアプローチにより、静的要素と動的に作成された要素の両方でイベントを柔軟に処理でき、要素に関係なくシームレスなユーザー インタラクションが保証されます。要素がページに追加されるとき。
以上がjQuery を使用して動的に作成された HTML 要素のイベントを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。