Heim > Web-Frontend > js-Tutorial > Hauptteil

Wie kann ich Eingabeänderungen in Echtzeit verfolgen, ohne den Fokus zu verlieren?

Susan Sarandon
Freigeben: 2024-11-15 12:34:02
Original
458 Leute haben es durchsucht

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

Verfolgen von Eingabeänderungen in Echtzeit mithilfe von „onchange“, ohne den Fokus zu verlieren

Eingabesteuerelemente mit dem Typ „Text“ lösen normalerweise das „ onchange“-Ereignis nur, wenn der Benutzer das Feld verlässt (unscharf macht). Diese Einschränkung kann frustrierend sein, wenn Änderungen während der Benutzereingabe verfolgt werden.

Glücklicherweise bieten moderne Browser eine bessere Lösung: „oninput“. Dieser Ereignis-Listener bietet eine Echtzeitaktualisierung des Inhalts des Textfelds, sodass Sie den Fokus nicht verlieren müssen. Für maximale Kompatibilität empfiehlt es sich, für die IE-Unterstützung sowohl „oninput“ als auch „onpropertychange“ zu verwenden.

Ein Beispiel zur Veranschaulichung dieses Ansatzes:

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
Nach dem Login kopieren

Zusätzliche Hinweise zur Browserkompatibilität:

  • „oninput“ wird in allen gängigen Browsern unterstützt, auch auf Mobilgeräten Browser.
  • IE8 und niedriger erfordern das Ereignis „onpropertychange“.
  • „onchange“ eignet sich aufgrund der Verzögerung nach dem Verlust des Fokus nicht zum Verfolgen von Änderungen während der Eingabe.

Das obige ist der detaillierte Inhalt vonWie kann ich Eingabeänderungen in Echtzeit verfolgen, ohne den Fokus zu verlieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage