ホームページ >ウェブフロントエンド >jsチュートリアル >集中力を失わずにリアルタイムの入力変更を追跡するにはどうすればよいですか?

集中力を失わずにリアルタイムの入力変更を追跡するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-11-15 12:34:02554ブラウズ

How Can I Track Real-time Input Changes Without Losing Focus?

フォーカスを失わずに 'onchange' を使用して入力変更をリアルタイムで追跡する

「テキスト」タイプの入力コントロールは通常、「 onchange」イベントは、ユーザーがフィールドを離れた(ぼかした)ときのみ発生します。この制限は、ユーザーの入力時の変更を追跡するときにイライラする可能性があります。

幸いなことに、最新のブラウザーでは、「oninput」というより良い解決策が提供されています。このイベント リスナーは、テキストフィールドのコンテンツをリアルタイムで更新するため、フォーカスを失う必要がなくなります。互換性を最大限に高めるには、IE サポートに「oninput」と「onpropertychange」の両方を使用することをお勧めします。

このアプローチを示す例:

const source = document.getElementById('source');
const result = document.getElementById('result');

const inputHandler = function(e) {
  result.innerText = e.target.value;
}

source.addEventListener('input', inputHandler);
source.addEventListener('propertychange', inputHandler); // for IE8

ブラウザの互換性に関する追加の注意事項:

  • 「oninput」はすべてのメジャーでサポートされていますモバイル ブラウザを含むブラウザ。
  • IE8 以下では、「onpropertychange」イベントが必要です。
  • 「onchange」は、フォーカスを失った後の遅延のため、入力中の変更を追跡するのには適していません。

以上が集中力を失わずにリアルタイムの入力変更を追跡するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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