Maison >interface Web >js tutoriel >jQuery Mobile : Document prêt ou événements de page : quel est le meilleur moyen de gérer le chargement des pages ?

jQuery Mobile : Document prêt ou événements de page : quel est le meilleur moyen de gérer le chargement des pages ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-28 13:08:14141parcourir

jQuery Mobile: Document Ready or Page Events: Which is Better for Handling Page Loads?

jQuery Mobile : Document Ready vs Page Events

Comprendre la différence

Dans jQuery Mobile, il existe deux manières principales d'exécuter du code lorsqu'une page est chargé :

  1. Document prêt ($(document).ready()) : Cet événement est déclenché lorsque le DOM est chargé et que tous les éléments sont disponibles. Cependant, dans jQuery Mobile, cet événement peut parfois s'exécuter trop tôt, avant que les pages ne soient chargées et manipulées à l'aide d'Ajax.
  2. Événements de page ($('.selector').on('pageinit/pagebeforeshow' )) : Ces événements sont spécifiquement conçus pour jQuery Mobile et sont déclenchés lorsqu'une page est initialisée ou avant son affichage. Ils garantissent que le code est exécuté uniquement lorsqu'une page particulière est chargée.

Pourquoi les événements de page sont meilleurs :

  • Ils garantissent que le code est exécuté uniquement lorsque la page prévue est chargée et visible.
  • Ils offrent un moyen plus prévisible et cohérent de gérer la page événements.

Ordre de transition des événements de page

Lors de la transition d'une page à une autre dans jQuery Mobile, une séquence d'événements de page est déclenchée dans l'ordre suivant :

  1. Page B : pagebeforecreate
  2. Page B : pagecreate
  3. Page B : pageinit
  4. Page A : pagebeforehide
  5. Page A : pageremove
  6. Page A : pagehide
  7. Page B : pagebeforeshow
  8. Page B : pageshow

Manipulation des données et paramètres Passage

Envoi de données d'une page à une autre :

  • Utilisez $.mobile.changePage() avec les options data et dataUrl pour transmettre les paramètres à la nouvelle page .
  • Dans la page de destination, récupérez les paramètres en utilisant $(document).data() ou $(document).data("url") pour obtenir la requête string.

Accès aux données d'une page précédente :

  • Stockez les données dans une variable globale ou utilisez l'objet sessionStorage.
  • Récupérez les données de l'emplacement partagé sur la nouvelle page.

Prévention de plusieurs événements Liaison

Pour empêcher la liaison de plusieurs événements sur le même élément lors de la navigation entre les pages :

  • Utilisez les événements de page au lieu de la préparation du document.
  • Utilisez des filtres d'événements (par exemple, :Event(!click)) pour garantir que les événements ne sont liés qu'une seule fois.
  • Utilisez e.handled = true dans les gestionnaires d'événements pour éviter redéclenchement.

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