Foros del Web » Programando para Internet » Javascript »

Problema con función XDiplay ... no se visualiza en ningun IE

Estas en el tema de Problema con función XDiplay ... no se visualiza en ningun IE en el foro de Javascript en Foros del Web. Hola Amigos de foros del Web: Tengo el siguiente problema a ver si me pueden ayudar. Poseo una funcion Javascript que me despliega/oculta capas en ...
  #1 (permalink)  
Antiguo 01/07/2009, 08:36
 
Fecha de Ingreso: julio-2009
Mensajes: 3
Antigüedad: 14 años, 10 meses
Puntos: 0
Problema con función XDiplay ... no se visualiza en ningun IE

Hola Amigos de foros del Web:

Tengo el siguiente problema a ver si me pueden ayudar. Poseo una funcion Javascript que me despliega/oculta capas en un formulario. Mi vida iba feliz ya que lo habia probado en Opera, Firefox y algunos navegadores de GNU/Linux, pero cuando lo fui a probar en las versiones de IE, no me funcionó en ninguna.

Espero me puedan ayudar. La funcion es la siguiente

Código:
function expandir_capa(){
if (document.camino.nro_comp.value == "1"){
	xDisplay('capa2', 'none')
	xDisplay('capa3', 'none')
	xDisplay('capa4', 'none')
	xDisplay('capa5', 'none')
	xDisplay('capa6', 'none')
	xDisplay('capa7', 'none')
	xDisplay('capa8', 'none')
	xDisplay('capa9', 'none')
	xDisplay('capa10', 'none')
 }
if (document.camino.nro_comp.value == "2"){
	
	xDisplay('capa2', 'block')
	xDisplay('capa3', 'none')
	xDisplay('capa4', 'none')
	xDisplay('capa5', 'none')
	xDisplay('capa6', 'none')
	xDisplay('capa7', 'none')
	xDisplay('capa8', 'none')
	xDisplay('capa9', 'none')
	xDisplay('capa10', 'none')
	
 }
Son diez capas, pero la idea hacia abajo es la misma. La css es la siguiente:

Código:
#capa2{
	position:relative;
	display:none;
	
}

#capa3{
	position:relative;
	display:none;
}
Siguiendo con las 10 capas y el Código HTML es el siguiente:

Código HTML:
<select name="nro_comp" size="1" onchange="expandir_capa()">
	<option value="1">1</option>
	<option value="2">2</option>
	<option value="3">3</option>
	<option value="4">4</option>
	<option value="5">5</option>
	<option value="6">6</option>
	<option value="7">7</option>
	<option value="8">8</option>
	<option value="9">9</option>
	<option value="10">10</option>
	</select> 
eso agregado a donde estan las capas. a continuación un extracto:

Código HTML:
<td width="30%"><font <?php echo "$verdana_2_burdeo"; ?>><b>Competencias</b></font></td>
    <td width="7%"><font <?php echo "$verdana_2_burdeo"; ?>><a href="#comp" onclick="expandir_formulario(1)"><b>1</b></font></a></td>
    <td width="7%"><div id="capa2"><a href="#comp" onclick="expandir_formulario(2)"><font <?php echo "$verdana_2_burdeo"; ?>><b>2</b></font></a></div>
    <td width="7%"><div id="capa3"><a href="#comp" onclick="expandir_formulario(3)"><font <?php echo "$verdana_2_burdeo"; ?>><b>3</b></font></a></div>
    <td width="7%"><div id="capa4"><a href="#comp" onclick="expandir_formulario(4)"><font <?php echo "$verdana_2_burdeo"; ?>><b>4</b></font></a></div>
    <td width="7%"><div id="capa5"><a href="#comp" onclick="expandir_formulario(5)"><font <?php echo "$verdana_2_burdeo"; ?>><b>5</b></font></a></div>
    <td width="7%"><div id="capa6"><a href="#comp" onclick="expandir_formulario(6)"><font <?php echo "$verdana_2_burdeo"; ?>><b>6</b></font></a></div>
    <td width="7%"><div id="capa7"><a href="#comp" onclick="expandir_formulario(7)"><font <?php echo "$verdana_2_burdeo"; ?>><b>7</b></font></a></div>
    <td width="7%"><div id="capa8"><a href="#comp" onclick="expandir_formulario(8)"><font <?php echo "$verdana_2_burdeo"; ?>><b>8</b></font></a></div>
    <td width="7%"><div id="capa9"><a href="#comp" onclick="expandir_formulario(9)"><font <?php echo "$verdana_2_burdeo"; ?>><b>9</b></font></a></div>
    <td width="7%"><div id="capa10"><a href="#comp" onclick="expandir_formulario(10)"><font <?php echo "$verdana_2_burdeo"; ?>><b>10</b></font></a></div></tr> 
Esas son la capas que se ocultan. Espero que me puedan ayudar con este problema, ya que no se ocurre como hacerlo funcionar en los difentes IE de microsoft. Espero sus sugerencias y muchas gracias.
  #2 (permalink)  
Antiguo 02/07/2009, 09:33
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Problema con función XDiplay ... no se visualiza en ningun IE

¿Cómo tienes definida la función xDisplay()?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 02/07/2009, 15:07
 
Fecha de Ingreso: julio-2009
Mensajes: 3
Antigüedad: 14 años, 10 meses
Puntos: 0
Respuesta: Problema con función XDiplay ... no se visualiza en ningun IE

La tengo de la siguiente manera:
Código:
<script type='text/javascript'>
function xDef(){
  for(var i=0; i<arguments.length; ++i){if(typeof(arguments[i])=='undefined') return false;}
  return true;
}
function xStr(s){
  for(var i=0; i<arguments.length; ++i){if(typeof(arguments[i])!='string') return false;}
  return true;
}

function xGetElementById(e){
  if(typeof(e)=='string') {
    if(document.getElementById) e=document.getElementById(e);
    else if(document.all) e=document.all[e];
    else e=null;
  }
  return e;
}

function xDisplay(e,s){
  if ((e=xGetElementById(e)) && e.style && xDef(e.style.display)) {
    if (xStr(s)) {
      try { e.style.display = s; }
      catch (ex) { e.style.display = ''; } // Will this make IE use a default value
    }                                      // appropriate for the element?
    return e.style.display;
  }
  return null;
}

</script>
Espero me puedas ayudar. Muchas gracias por responder. Saludos
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 08:28.