Maison  >  Article  >  interface Web  >  Comment détecter les modifications d'entrée en temps réel dans n'importe quel navigateur avec jQuery ?

Comment détecter les modifications d'entrée en temps réel dans n'importe quel navigateur avec jQuery ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-30 04:48:28399parcourir

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

Détecter immédiatement les modifications d'entrée dans n'importe quel navigateur à l'aide de jQuery

Vous souhaitez capturer toutes les modifications de valeur dans un élément en temps réel, déclenché non seulement par les pressions sur des touches, mais également par des actions telles que le copier/coller, les modifications JavaScript, la saisie semi-automatique du navigateur et la réinitialisation des formulaires. Voici une solution jQuery robuste qui gère ces modifications de manière cohérente dans tous les navigateurs :

Mise en œuvre :

<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>

Remarque :

  • .bind() était obsolète dans jQuery version 3.0, utilisez donc plutôt .on() pour les versions jQuery 1.7 ou plus récentes.
  • Cette approche garantit que les modifications sont détectées immédiatement, contrairement à l'utilisation de setInterval ou setTimeout, qui introduire des retards.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn