estoy usando el control asp:Menu
en una página ASP.NET 4.0 Webforms con el modo de renderizado sin tabla:Cómo deshacerse de ugly asp: Menú parpadeo?
<asp:Menu ID="MenuBase" runat="server" DataSourceID="SiteMapDataSourceMenu"
Orientation="Horizontal" CssClass="contentmenu" RenderingMode="List"
IncludeStyleBlock="false">
</asp:Menu>
El menú tiene una fila horizontal principal con 5 o 6 elementos de menú y algunos de ellos abiertos verticales menús emergentes cuando el usuario se cierne sobre ellos.
A menudo, cuando se realiza una devolución de datos y la página se vuelve a renderizar, el menú "parpadea" por un momento (digamos, medio segundo) lo que significa: Todos los elementos del menú, incluidos los de los menús emergentes, se muestran en uno o más filas una después de la otra antes de que vuelvan al estado normal deseado.
En este breve momento de una visualización "desplegada" de todos los elementos del menú, el menú se ve COMO SI JavaScript se hubiera desactivado en el navegador. (Parece que la construcción de los menús emergentes se logra mediante el uso de Javascript en el control de menú asp:)
Este comportamiento es bastante feo, especialmente con un menú grande (representación por el momento corto de más de 2 o 3 filas) El contenido de la página completa se mueve hacia abajo antes de que salte a la pantalla normal.
¿Conoces alguna solución a este problema?
¡Gracias de antemano!
(Nota: Debo mencionar que utilicé el conocido control de menú compatible con CSS de CodePlex antes de actualizar a ASP.NET 4.0. Supuse que ya no necesito el control compatible con CSS porque el asp : El menú en la versión 4 ofrece un modo de representación de Lista incorporado ahora. Por lo que recuerdo, no tuve este parpadeo con el control compatible con CSS y creo que este control no utiliza Javascript. Quizás esto fue un error . paso Busco ahora para una solución sin tener que pasar de nuevo al control de menú CSS-amigable, si es posible)
Editar:.
Este parpadeo es inde navegador ent, aunque más notable en IE 8 y 7. En IE 7 (o modo de compatibilidad en IE 8) es extraordinariamente feo ya que los elementos del menú se muestran en un patrón de diagonal loco, incluso más de 5 o 6 filas.
No menciona que está utilizando una página maestra, sin embargo, algunas de las respuestas en esta pregunta pueden ser de ayuda (no estoy seguro si ya la vio). http: // stackoverflow.com/preguntas/888245/asp-menú de control de red-renders-incorrectamente cuando se utiliza-on-a-maestro-página- –
Gracias por el enlace! ¡Esto ayudó mucho! No vi esta pregunta. Si, estoy utilizando páginas maestras y, a primera vista parece que la solución para encerrar el menú en su propia ContentPlaceHolder está trabajando. Tengo que probarlo finalmente en el servidor en vivo, ya que en mi máquina de desarrollo no veo este parpadeo muy a menudo. Es más notable en un servidor de producción con "latencia en vivo" normal a través de Internet. Desafortunadamente – Slauma
la prueba en un servidor en vivo con una latencia realista reveló que la solución para encerrar el menú en su propia ContentPlaceHolder no funcionaba. El parpadeo aún está allí (probado en IE 8 (con y sin modo de compatibilidad) y Firefox). – Slauma