J'ai plutôt une interface utilisateur complexe. Cependant, pour les besoins de cette question, disons qu'il existe une table HTML qui affiche UILayout1 par défaut (disons le mode par défaut). Un bouton permet à un utilisateur de basculer entre le mode par défaut et un mode de prévisualisation (UILayout2)UpdatePanel - Des idées sur la façon d'éviter un scintillement dans l'interface utilisateur? - ASP.NET/Jquery
En mode de prévisualisation, certaines colonnes du tableau sont invisibles et les rangées sont réorganisées. J'utilise JS (jquery) sur la charge pour vérifier le mode et le modifier en conséquence.
La table et le bouton bascule sont dans UpdatePanels.
Fonctionnellement, tout fonctionne comme prévu. Toutefois, lorsqu'un utilisateur bascule entre le mode par défaut et le mode de prévisualisation ou inversement, il existe un intervalle de temps court pendant lequel la table s'affiche par défaut, puis JS s'exécute pour apporter des modifications.
Cela entraîne une dégradation de l'interface utilisateur. Existe-t-il des moyens créatifs d'éviter ce "scintillement"?
Les UpdatePanels ont tendance à ajouter beaucoup de ballonnement à la page et ne sont pas particulièrement rapides. Il est préférable d'éviter de les utiliser si vous le pouvez. –
@Bennor - La séquence d'événements est 1) les charges html statiques 2) la jquery s'exécute et met à jour html en fonction du mode. Ainsi, l'utilisateur voit 1 et 2. Je veux que l'utilisateur ne voit que 2. – DotnetDude
Si vous mettez du code pour masquer votre code HTML statique directement après le code HTML statique dans la page (et non dans un gestionnaire de document prêt), il ne sera pas rendu. Vous pouvez ensuite le configurer avec votre autre code, puis l'afficher quand tout est configuré. Si cela prend du temps, vous pouvez afficher une image de chargement à la place pendant que la table est masquée. –