Foros del Web » Programando para Internet » Javascript »

capa invisible getElementById

Estas en el tema de capa invisible getElementById en el foro de Javascript en Foros del Web. Hola, estoy usando 2 selects en donde el segundo debe aparecer o desaparecer depende de la elección del primero (una capa que se hace visible ...
  #1 (permalink)  
Antiguo 31/03/2004, 18:47
 
Fecha de Ingreso: julio-2002
Mensajes: 447
Antigüedad: 21 años, 9 meses
Puntos: 0
capa invisible getElementById

Hola, estoy usando 2 selects en donde el segundo debe aparecer o desaparecer depende de la elección del primero (una capa que se hace visible o invisible). No tenía inconvenientes para hacerlo funcionar en Explorer 6, pero en el resto de los navegadores no funcionaba (no desaparecía), hasta que comencé a utilizar getElementById(). Con getElementById() funciona bien en IE 6, NS 7.1, Mozilla 1.6, Opera 7.23 y Mozilla Firefox 0.8 (no en NS 4).
Mis dudas son:

. ¿En IE 5 y NS 6 funciona bien getElementById()? ¿Y En versiones anteriores de Mozilla y Opera?
. ¿Es posible esconder capas (en este caso un select) en todos los otros navegadores que mencioné (sacando al Explorer) sin utilizar getElementById? (ya que en NS 4 y versiones viejas del IE no funciona) ¿O hay que hacer un código especial para cada navegador?
. ¿Qué puedo hacer con NS 4? ¿Es posible esconder capas en NS 4?

Muchas gracias por sus comentarios y ayuda.
Saludos
  #2 (permalink)  
Antiguo 01/04/2004, 02:37
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Es complicado esto.

He sacado un código, pero no sé yo... te obliga a tener 2 formularios ya que si no el NS 4.7 no muestra el segundo select como tal. Probablemente sea por culpa mía. Lo pongo aquí por si acaso alguien pueda arreglarlo y que así te sirva:

Código PHP:
<html>
<
head>
</
head>
<
script>
etiqueta=(document.layers)?"layer":"div";
function 
visibilidad(capa,si){
mostrar=(etiqueta=="div")?"visible":"show";
valor=["",mostrar,"hidden"]

if(
document.layers){document.layers[capa].visibility=valor[si];}
else{
document.getElementById(capa).style.visibility=valor[si];}
}

</script>
    <title>Untitled</title>
</head>

<body>


<form>
<select name="juan" onchange="visibilidad('pepe',this.selectedIndex);">
<option>Seleccione una opción
<option>Mostrar
<option>Ocultar
</select>
<script>
document.write("<"+etiqueta+" id='pepe'>");
</script>
<form>
<select>
<option>Hola 
<option>Adios
</select></form>
<script>
document.write("</"+etiqueta+">");

</script>
</form>

</body>
</html> 
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:47.