Maison >interface Web >js tutoriel >Comment conserver les effets de survol de la souris jQuery dans ASP.NET UpdatePanels ?

Comment conserver les effets de survol de la souris jQuery dans ASP.NET UpdatePanels ?

DDD
DDDoriginal
2024-12-03 08:47:09870parcourir

How to Maintain jQuery Mouseover Effects in ASP.NET UpdatePanels?

jQuery $(document).ready et UpdatePanels : un look raffiné

Lors de l'utilisation de jQuery pour appliquer des effets de survol de la souris aux éléments d'un UpdatePanel, le chargement initial de la page fonctionne comme prévu. Cependant, lors des mises à jour partielles de page initiées par UpdatePanel, les effets de survol cessent de fonctionner dans cette zone spécifique.

Cela se produit parce que UpdatePanel révise le contenu de son panneau, éliminant ainsi tout abonnement à des événements attaché aux éléments précédents. . Pour résoudre ce problème, il est recommandé de se réabonner aux événements requis après chaque mise à jour. Ceci peut être réalisé en combinant $(document).ready pour le chargement initial avec l'objet PageRequestManager de Microsoft pour les mises à jour ultérieures.

Le PageRequestManager, un objet JavaScript automatiquement disponible lorsqu'un UpdatePanel est présent, fournit un événement endRequest qui déclenche une fois la mise à jour terminée. Cela peut être exploité pour relier à nouveau les événements jQuery, comme indiqué ci-dessous :

$(document).ready(function() {
    // Initial event binding
});

var prm = Sys.WebForms.PageRequestManager.getInstance();

prm.add_endRequest(function() {
    // Event re-binding after update
});

L'événement PageRequestManager fournit un accès à l'expéditeur et à eventArgs, permettant un contrôle plus précis sur la nouvelle liaison. Pour plus de détails, reportez-vous à la documentation de Microsoft : msdn.microsoft.com/.../bb383810.aspx

Une approche alternative, particulièrement adaptée aux scénarios hautement dynamiques, consiste à utiliser la méthode .on() de jQuery. .on() offre une efficacité améliorée par rapport aux réabonnements fréquents. Cependant, il est essentiel de lire attentivement la documentation avant de prendre une décision, car tous les plugins jQuery ne peuvent pas être facilement refactorisés pour utiliser .on(). Dans de tels cas, les réabonnements restent une solution plus pratique.

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