ホームページ  >  記事  >  ウェブフロントエンド  >  jQuery を使用して任意のブラウザで入力の変更をリアルタイムで検出するにはどうすればよいですか?

jQuery を使用して任意のブラウザで入力の変更をリアルタイムで検出するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-30 04:48:28406ブラウズ

How to Detect Input Changes in Real Time in Any Browser with jQuery?

jQuery を使用して任意のブラウザで入力の変更を即座に検出する

キー押下だけでなく、コピー/ペースト、JavaScript の変更、ブラウザーのオートコンプリート、フォームのリセットなどのアクションによってもトリガーされる要素をリアルタイムで作成します。これらの変更をブラウザ間で一貫して処理する堅牢な jQuery ソリューションを次に示します。

実装:

<code class="javascript">$('.myElements').each(function() {
  const elem = $(this);

  // Store the initial value
  elem.data('oldVal', elem.val());

  // Bind to change events
  elem.on("propertychange change click keyup input paste", function(event) {
    // Check if the value has changed
    if (elem.data('oldVal') != elem.val()) {
      // Update the stored value
      elem.data('oldVal', elem.val());

      // Perform your desired action when the value changes
      // ...
    }
  });
});</code>

注:

  • .bind() は jQuery バージョン 3.0 で非推奨になったため、jQuery バージョン 1.7 以降では代わりに .on() を使用してください。
  • このアプローチでは、setInterval や setTimeout を使用するのとは異なり、変更が即座に検出されます。遅延が発生します。

以上がjQuery を使用して任意のブラウザで入力の変更をリアルタイムで検出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。