Creo que con un IF se puede pero no se armarlo, me podrian hacer una sugerencia???????
Miguel

| ||||
Este es el codigo: <HTML> <HEAD> <script language="JavaScript"> ns=document.layers ie=document.all function esconde() { if (ie) precarga.style.visibility="hidden"; if(ns) document.pregarga.visibility="hide"; } </script> <style> #precarga{position:absolute; width:50%; height:50%; top:100; left:200} </style> <meta http-equiv="Content-Language" content="es"> <TITLE>layout</TITLE> <script language=javascript> <!-- window.status = ('Espere un momento, cargando el sitio...') //--> </script> ...... ..... .... </head> <body onload="esconde();"> <script language="JavaScript"> if(ie || ns) document.write('<div id="precarga" align="center"><font color="#FF0000" size="4"><b>C a r g a n d o....</b><br>Por Favor Espere...!!!</font><img src=Fotos/barra2.gif border=1></div>'); </script> <% Response.Flush %> </body> Lo que quiero es que este mensaje se repita una sola vez al entrar a la pagina index.asp, y no cuando navego por toada las otras paginas y regreso atras???? Miguel
__________________ Miguel Padrón :cool: |
| ||||
Te recomiendo que uses una variable de sesión de ASP. Cuando entras en index.asp compruebas si existe. Si no existe la creas, y así, la próxima vez que entres, al estar ya creada, la puedes utilizar para definir el condicional. Es decir, mostrar o no el mensaje de "Cargando..." Un saludo.
__________________ ¡¡NO A LA GUERRA!! Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares! |
| ||||
Amigo hice algo asi: <%SW=Session.SessionID%> <%response.write SW%> <%if SW<>"" then%> <script language="JavaScript"> ns=document.layers ie=document.all function esconde() { if (ie) precarga.style.visibility="hidden"; if(ns) document.pregarga.visibility="hide"; } </script> <style> #precarga{position:absolute; width:50%; height:50%; top:100; left:200} </style> <meta http-equiv="Content-Language" content="es"> <TITLE>layout</TITLE> <script language=javascript> <!-- window.status = ('Espere un momento, cargando el sitio...') //--> </script> <% else end if ................ %> Pero no me funciona, sera que me puede dar una mano Miguel
__________________ Miguel Padrón :cool: |
| ||||
Código:
Perdona por la tadanza en escribir. Vamos a ver:<%SW=Session.SessionID%> <%response.write SW%> <%if SW<>"" then%> <script language="JavaScript"> Si lo primero que haces es crear la variable de sesión antes de comprobar si realmente ya existía, obviamente, el condicional siempre funcionará igual. Primero has de escribir el condicional para ver si existe, y en caso negativo la creas. Luego has puesto lo siguiente en el condicional: "Si SW es distinta de (vacío), entonces...", es decir, "si la variable existe, entonces...". Supongo que debería ser al revés: "si la variable es igual a (vacío), entonces..." <%IF SW="" THEN%> <script> ...... Por último, y probablemente más importante, es cómo has definido la variable de sesión. Te pongo todo el código (no probado):
Código:
Espero que funcione. Un saludo. <% 'Comprueba que la variable no existe o está vacía IF Session("PrimeraVez") = "" THEN 'Le da un valor a la variable, de modo que ya no esté vacía Session("PrimeraVez") = 1 %> <script language="JavaScript"> ns=document.layers ie=document.all function esconde() { if (ie) precarga.style.visibility="hidden"; if(ns) document.pregarga.visibility="hide"; } </script> <style> #precarga{position:absolute; width:50%; height:50%; top:100; left:200} </style> <meta http-equiv="Content-Language" content="es"> <TITLE>layout</TITLE> <script language=javascript> <!-- window.status = ('Espere un momento, cargando el sitio...') //--> </script> <% ELSE ................. END IF ................ %>
__________________ ¡¡NO A LA GUERRA!! Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares! |
| ||||
Hola amigo probe tu codigo y creo que funciona, pero me sale un pequeño de error me dice que en la linea 47 no esta definido el "ie", esa linea esta en un codigo de javasecript. Creo que se debe al que el: <% ELSE ................. END IF ................ %> No esta en la posicion correcta, m epuede explicar que debeo poner en los puntos que colocaste entre else y end if????? Miguel
__________________ Miguel Padrón :cool: |
| ||||
Ehhh.... sí. Me suponía que te iba a pasar esto, tenía que haberte avisado. Lo siento. Bien, vamos a ver. Los puntos que pongo es por si tú querías incluir alguna acción en el caso de que la variable exista de antemano, es decir, que es la segunda vez que entras en la página. Como supongo que no quieres realizar ninguna acción concreta, símplemente has de quitar ELSE y los puntos y cerrar el condicional: <%END IF%>. Ahora bien, cuando entras por segunda vez ya no carga el código Javascript de la cabecera ¿no? Pues por eso te da un error, ya que después de la etiqueta BODY abres un SCRIPT y pides la variable "ie". Como no habías cargado el SCRIPT previo, esta variable no existe. Si pruebas con el navagador Netscape verás como en ese caso es la variable "ns" la que da el error. Entonces, se trata de escribir el condicional de modo que lo que no se muestre es el SCIRPT que crea la etiqueta "precarga". Vamos allá (lo he rehecho todo un poco).
Código:
A ver ahora qué tal. <HTML> <HEAD> <TITLE>layout</TITLE> <% 'Comprueba que la variable no existe o está vacía IF Session("PrimeraVez") = "" THEN 'Le da un valor a la variable, de modo que ya no esté vacía Session("PrimeraVez") = 1 %> <STYLE> #precarga{position:absolute; width:50%; height:50%; top:100; left:200} </STYLE> <SCRIPT Language="JavaScript"> ns=document.layers ie=document.all function esconde() { if (ie) precarga.style.visibility="hidden"; if(ns) document.pregarga.visibility="hide"; } if(ie || ns) document.write('<div id="precarga" align="center"><font color="#FF0000" size="4"><b>C a r g a n d o....</b><br>Por Favor Espere...!!!</font><img src=Fotos/barra2.gif border=1></div>'); </SCRIPT> </HEAD> <BODY onLoad="esconde()"> <%ELSE%> </HEAD> <BODY> <% END IF Response.Flush %> Resto de la página................. .................
__________________ ¡¡NO A LA GUERRA!! Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares! Última edición por Bravenap; 24/05/2004 a las 07:13 |
| ||||
Amigo no tienes algun error en esta parte: if(ie || ns) document.write('<div id="precarga" align="center"><font color="#FF0000" size="4"><b>C a r g a n d o....</b><br>Por Favor Espere...!!!</font><img src=Fotos/barra2.gif border=1></div>'); </SCRIPT> </HEAD> <BODY onLoad="esconde()"> <%ELSE%> </HEAD> <BODY> <% END IF Response.Flush %> Resto de la página................. ................. Estoy tratanado de arreglarlo y nada, es mas aqui te dejot todo lo que estoya haciendo: <HTML> <HEAD> <% if Session("PrimeraVez")= "" then Session("PrimeraVez")= 1 %> <script language="JavaScript"> ns=document.layers ie=document.all function esconde() { if (ie) precarga.style.visibility="hidden"; if(ns) document.pregarga.visibility="hide"; } </script> <style> #precarga{position:absolute; width:50%; height:50%; top:100; left:200} </style> <meta http-equiv="Content-Language" content="es"> <TITLE>layout</TITLE> <script language=javascript> <!-- window.status = ('Espere un momento, cargando el sitio...') //--> </script> <%else%> <%end if%> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=windows-1252"> <!-- ImageReady Preload Script (layout.psd) --> <SCRIPT TYPE="text/javascript"> <!-- function newImage(arg) { if (document.images) { rslt = new Image(); rslt.src = arg; return rslt; } } function changeImages() { if (document.images && (preloadFlag == true)) { for (var i=0; i<changeImages.arguments.length; i+=2) { document[changeImages.arguments[i]].src = changeImages.arguments[i+1]; } } } var preloadFlag = false; function preloadImages() { if (document.images) { Button1_over = newImage("images/Button1-over.gif"); Button2_Button1_over = newImage("images/Button2-Button1_over.gif"); Button2_over = newImage("images/Button2-over.gif"); Button3_Button2_over = newImage("images/Button3-Button2_over.gif"); Button3_over = newImage("images/Button3-over.gif"); layout_17_Button3_over = newImage("images/layout_17-Button3_over.gif"); preloadFlag = true; } } // --> </SCRIPT> <!-- End Preload Script --> <link href="style.css" rel="stylesheet" type="text/css"> </HEAD> <body onload="esconde();"> <script language="JavaScript"> if(ie || ns) document.write('<div id="precarga" align="center"><font color="#FF0000" size="4"><b>C a r g a n d o....</b><br>Por Favor Espere...!!!</font><img src=Fotos/barra2.gif border=1></div>'); </script> <% Response.Flush %> .................................................. .. ........................................... Miguel ![]() Miguel
__________________ Miguel Padrón :cool: Última edición por 8461277; 24/05/2004 a las 07:37 |
| ||||
Pues no sé si tendré un error, yo símplemente me he limitado a copiar la línea tuya. No obstante te repito que en este código:
Código:
Lo que está remarcado en negrita es lo que probablemente te devuelva el error, ya que ie no está definido porque no lo definiste al utilizar el condicional la segunda vez.<body onload="esconde();"> <script language="JavaScript"> if(ie || ns) document.write('<div id="precarga.................. </script> Prueba el código que te di antes tal cual y dime si te da algún problema. suerte.
__________________ ¡¡NO A LA GUERRA!! Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares! |
| ||||
Amigo lo te trataba de decir es los head, veo que antes del body hay un cierre de head y despuesdel body ahay otro: </HEAD> <BODY onLoad="esconde()"> <%ELSE%> </HEAD> <BODY> El segundo body es body de cierre???? Ya prtobe la sugerencia tuya y me sigue dando el error "ie" pero en la linea Miguel
__________________ Miguel Padrón :cool: |
| ||||
No, no. Verás que entre las dos etiquetas de <BODY> hay una de ASP
Código:
Esa etiqueta forma parte del condicional e indica lo que ha de hacerse en el caso de que no se cumplan las condiciones defindias, es decir, que la variable de sesión ya existe. La variable ya existe, entonces es la segunda vez que se entra en la página y, por tanto, ya no se muestra la capa de precarga. Si no se muestra la capa ¿para qué necesitas esconderla con la función esconde()? Entonces, ya no se necesita la llamada a esa función. Así que la suprimimos la segunda vez.</HEAD> <BODY onLoad="esconde()"> <%ELSE%> </HEAD> <BODY>
Código:
Si compruebas el código fuente que te devuleve la página ASP, por ejemplo con el Explorardor, verás que sólo hay una etiqueta </HEAD> y una <BODY>. </HEAD> <BODY onLoad="esconde()"> <%ELSE%> </HEAD> <BODY>
__________________ ¡¡NO A LA GUERRA!! Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares! Última edición por Bravenap; 24/05/2004 a las 08:51 |
| ||||
![]() ![]() ![]() Me alegro de que te funcione. Un saludo de un tocayo.
__________________ ¡¡NO A LA GUERRA!! Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares! |