Foros del Web » Programando para Internet » Javascript »

[SOLUCIONADO] Ocultar Div y enlaces que lo llaman

Estas en el tema de Ocultar Div y enlaces que lo llaman en el foro de Javascript en Foros del Web. Buenas tardes. Para empezar inicio diciendo que me encontre este codigo y que no se mucho de javascript, el codigo funciona perfecto para ocultar y ...
  #1 (permalink)  
Antiguo 13/02/2013, 13:59
Avatar de Sherly  
Fecha de Ingreso: septiembre-2008
Ubicación: Valles
Mensajes: 58
Antigüedad: 15 años, 7 meses
Puntos: 1
Ocultar Div y enlaces que lo llaman

Buenas tardes.
Para empezar inicio diciendo que me encontre este codigo y que no se mucho de javascript, el codigo funciona perfecto para ocultar y mostrar el div. Lo explico mejor
al hacer click en "leer mas" muestra el div oculto con la información, en el div oculto esta una x que es para volver a ocultar el div. El problema que tengo es que no me oculta el Leer mas me lo deja ahi les paso el codigo.

Código:
<script type="text/javascript">
function showLightbox() {
	document.getElementById('over').style.display='block';
	document.getElementById('fade').style.display='block';
	document.getElementById('mas').style.display='none';

}
function hideLightbox() {
	document.getElementById('over').style.display='none';
	document.getElementById('fade').style.display='none';
	document.getElementById('mas').style.display='block';
}	

</script>
<style>.fadebox {
	display: none;
	position: absolute;
	top: 0%;
	left: 0%;
	width: 100%;
	height: 100%;
	background-color: #000;
	z-index:1001;
	-moz-opacity: 0.8;
	opacity:.80;
	filter: alpha(opacity=80);
}
.overbox {
	display: none;
	/*position: absolute;
	top: 25%;
	left: 25%;
	width: 50%;
	height: 50%;*/
	z-index:1002;
	
}
.leerover{display:block;}
#mas a{
	
	color:#EE8E22;
	background-repeat:no-repeat;
	height:20px;
	width:80px;
	float:left;
	font-size:11px;
	line-height:20px;
	text-align:center;
	margin-top:10px;
	margin-bottom: 10px;
	}
#mas a:hover{
	color: #D3620E;
	background-repeat: no-repeat;
	height: 20px;
	width: 80px;
	float: left;
	line-height: 20px;
	text-align: center;
	margin-top: 10px;
	font-size: 11px;
	margin-bottom: 10px;
	}
#box {
	background: #FFFFFF;
	padding: -10px;
	text-align: justify;
}
</style>
<div id="mas" class="leerover"><a href="javascript:showLightbox();">Ver Más...</a></div>
      	  <div id="over" class="overbox">
	     <div id="box"><a style="float:right" href="javascript:hideLightbox();"><img src="images/close.gif" width="14" height="14"></a>
<p>Hemos trabajado en 16 Países Latinoamericanos así como en la Unión Europea.</p></div>
Asigno el ID del div que contiene el enlace al script y le coloco que al hacer la llamada lo oculte y viceversa, ya busque la solucion por todos lados y no la encontro temo que no se pueda.

Espero alguien pueda hecharme la mano.

de antamano muchas gracias
  #2 (permalink)  
Antiguo 13/02/2013, 22:15
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Ocultar Div y enlaces que lo llaman

a mi me funciona
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  
  7. <script type="text/javascript">
  8. function showLightbox() {
  9.     document.getElementById('over').style.display='block';
  10.     document.getElementById('fade').style.display='block';
  11.     document.getElementById('mas').style.display='none';
  12.  
  13. }
  14. function hideLightbox() {
  15.     document.getElementById('over').style.display='none';
  16.     document.getElementById('fade').style.display='none';
  17.     document.getElementById('mas').style.display='block';
  18. }  
  19.  
  20. <style>.fadebox {
  21.     display: none;
  22.     position: absolute;
  23.     top: 0%;
  24.     left: 0%;
  25.     width: 100%;
  26.     height: 100%;
  27.     background-color: #000;
  28.     z-index:1001;
  29.     -moz-opacity: 0.8;
  30.     opacity:.80;
  31.     filter: alpha(opacity=80);
  32. }
  33. .overbox {
  34.     display: none;
  35.     /*position: absolute;
  36.     top: 25%;
  37.     left: 25%;
  38.     width: 50%;
  39.     height: 50%;*/
  40.     z-index:1002;
  41.    
  42. }
  43. .leerover{display:block;}
  44. #mas a{
  45.    
  46.     color:#EE8E22;
  47.     background-repeat:no-repeat;
  48.     height:20px;
  49.     width:80px;
  50.     float:left;
  51.     font-size:11px;
  52.     line-height:20px;
  53.     text-align:center;
  54.     margin-top:10px;
  55.     margin-bottom: 10px;
  56.     }
  57. #mas a:hover{
  58.     color: #D3620E;
  59.     background-repeat: no-repeat;
  60.     height: 20px;
  61.     width: 80px;
  62.     float: left;
  63.     line-height: 20px;
  64.     text-align: center;
  65.     margin-top: 10px;
  66.     font-size: 11px;
  67.     margin-bottom: 10px;
  68.     }
  69. #box {
  70.     background: #FFFFFF;
  71.     padding: -10px;
  72.     text-align: justify;
  73. }
  74. </head>
  75. <div id="mas" class="leerover"><a href="javascript:showLightbox();">Ver Más...</a></div>
  76.           <div id="over" class="overbox">
  77.          <div id="box"><a href="javascript:hideLightbox();">cerrar</a>
  78. <p>Hemos trabajado en 16 Países Latinoamericanos así como en la Unión Europea.</p></div>
  79. </body>
  80. </html>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 14/02/2013, 03:01
Avatar de Fuzzylog  
Fecha de Ingreso: agosto-2008
Ubicación: En internet
Mensajes: 2.511
Antigüedad: 15 años, 8 meses
Puntos: 188
Respuesta: Ocultar Div y enlaces que lo llaman

Posibilidades:

a) Que Sherly tenga algo en caché que haga que no le funcione correctamente. Para eso tienes que limpiar la caché del navegador y probar de nuevo.
b) Que hayais usado navegadores diferentes con diferente comportamiento.

:|
__________________
if (fuzzy && smooth) {
fuzzylog = "c00l";
return true;
}
  #4 (permalink)  
Antiguo 14/02/2013, 10:31
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 3 meses
Puntos: 36
Información Respuesta: Ocultar Div y enlaces que lo llaman

Del codigo que tienes originalmente y que es el que pegaste primero veo dos cosas;
  1. Tienes comentado algunos atributos de la clase 'overbox.
  2. Al div con el id 'over' le falta el tag </div> que lo cierra.

    Tambien:
  3. En el css tienes una clase llamada 'fadebox' que no la estas usando y esta es la que pone el fondo en negro. Para esto le agregue ese div que faltaba y lo puse antes que el div con id 'mas'
  4. Por estandarizacion no le estas asignado el atributo type en el style del css 'type="text/css"'
  5. En tu javascript estas buscando un id que se llama 'fade' el cual no existe en tu Dom.
  6. La clase overbox en el css le falta tener un atributo de fondo 'background-color> #ffffff' para que la puedas visualizar completamente, si no solo queda el fondo blanco de tu texto.


A continuacion te pego el codigo con las correciones pertinentes, es muy importante que lo veas y compares con el que tenias
anteriormente para que puedas analalizar bien tus errores, saludos y por favor da el tema como solucionado.

Código HTML:
Ver original
  1.     <head>
  2.         <meta charset="utf-8" />
  3.         <meta name="author" content="reedyseth"/>
  4.         <meta name="myBlog" content="www.behstant.com/blog"
  5.         <title>Empty</title>
  6.         <script type="text/javascript">
  7.             function showLightbox() {
  8.                 document.getElementById('over').style.display = 'block';               
  9.                 document.getElementById('mas').style.display = 'none';
  10.                 // codigo agregado
  11.                 document.getElementById('fadebox').style.display = 'block';
  12.             }
  13.  
  14.             function hideLightbox() {
  15.                 document.getElementById('over').style.display = 'none';
  16.                 document.getElementById('mas').style.display = 'block';            
  17.                 // codigo agregado
  18.                 document.getElementById('fadebox').style.display = 'none';
  19.             }
  20.  
  21.         </script>
  22.         <style type="text/css">          
  23.             #fadebox {
  24.                 display: none;
  25.                 position: absolute;
  26.                 top: 0%;
  27.                 left: 0%;
  28.                 width: 100%;
  29.                 height: 100%;
  30.                 background-color: #000;
  31.                 z-index: 1001;
  32.                 -moz-opacity: 0.8;
  33.                 opacity: .80;
  34.                 filter: alpha(opacity=80);
  35.             }
  36.             .overbox {
  37.                 display: none;
  38.                 position: absolute;
  39.                 top: 25%;
  40.                 left: 25%;
  41.                 width: 50%;
  42.                 height: 50%;
  43.                 z-index: 1002;
  44.                 background-color: #ffffff;
  45.             }
  46.             .leerover {
  47.                 display: block;
  48.             }
  49.             #mas a {
  50.  
  51.                 color: #EE8E22;
  52.                 background-repeat: no-repeat;
  53.                 height: 20px;
  54.                 width: 80px;
  55.                 float: left;
  56.                 font-size: 11px;
  57.                 line-height: 20px;
  58.                 text-align: center;
  59.                 margin-top: 10px;
  60.                 margin-bottom: 10px;
  61.             }
  62.             #mas a:hover {
  63.                 color: #D3620E;
  64.                 background-repeat: no-repeat;
  65.                 height: 20px;
  66.                 width: 80px;
  67.                 float: left;
  68.                 line-height: 20px;
  69.                 text-align: center;
  70.                 margin-top: 10px;
  71.                 font-size: 11px;
  72.                 margin-bottom: 10px;
  73.             }
  74.             #box {
  75.                 background: #FFFFFF;
  76.                 padding: -10px;
  77.                 text-align: justify;
  78.             }
  79.         </style>
  80.     </head>
  81.     <body> 
  82.         <div id="fadebox"></div>
  83.         <div id="mas" class="leerover">
  84.             <a href="javascript:showLightbox();">Ver Más...</a>
  85.         </div>
  86.         <div id="over" class="overbox">
  87.             <div id="box">
  88.                 <a style="float:right" href="javascript:hideLightbox();"><img src="images/close.gif" width="14" height="14"></a>
  89.                 <p>
  90.                     Hemos trabajado en 16 Países Latinoamericanos así como en la Unión Europea.
  91.                 </p>
  92.             </div>
  93.         </div>
  94.     </body>
  95. </html>

Reedyseth
http://behstant.com/blog
  #5 (permalink)  
Antiguo 14/02/2013, 11:12
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: Ocultar Div y enlaces que lo llaman

Yo esperaría que la usuaria conteste.
Según mi lógica, esto
http://foros.emprear.com/javascript/..._detalles.html
funciona correctamente, el botón cerrar "cierra el contenido", no cierra ni tendría porque ocultar el "ver más"

Es cierto que su script no es muy eficiente en cuanto a optimización, pero funciona

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #6 (permalink)  
Antiguo 14/02/2013, 17:24
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 3 meses
Puntos: 36
Respuesta: Ocultar Div y enlaces que lo llaman

Cita:
Iniciado por emprear Ver Mensaje
Yo esperaría que la usuaria conteste.
Según mi lógica, esto
http://foros.emprear.com/javascript/..._detalles.html
funciona correctamente, el botón cerrar "cierra el contenido", no cierra ni tendría porque ocultar el "ver más"

Es cierto que su script no es muy eficiente en cuanto a optimización, pero funciona

Saludos

Tienes razon emprear pero como puedes apreciar en el CSS esta intentando hacer un lightbox.

Por este tipo de usuarios es que no contestamos sus dudas, ni las gracias dan !!
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.
  #7 (permalink)  
Antiguo 26/02/2013, 13:33
Avatar de Sherly  
Fecha de Ingreso: septiembre-2008
Ubicación: Valles
Mensajes: 58
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Ocultar Div y enlaces que lo llaman

Una disculpa por el atraso en contestar me salio mas trabajo y tuve que dejar este a un lado por un tiempo y hoy retomando, voy a empezar a probar y checar las respuestas.
de antemano muchas gracias.
Realmente el código me funciona bien, solo que me salia de la estética que el ver mas se quedara ahí y no se ocultara


Reedyseth... relax compañero no se moleste
  #8 (permalink)  
Antiguo 26/02/2013, 13:45
Avatar de Sherly  
Fecha de Ingreso: septiembre-2008
Ubicación: Valles
Mensajes: 58
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Ocultar Div y enlaces que lo llaman

mi error, cosas que no dije, ese código fue editado de un lightbox y que a mi se me hizo muy útil para ocultar y mostrar un ver mas .
así que hice algunas modificaciones para que no saliera el lightbox por eso es que algunas cosas del código no las utilizaba.

Lo que tengo es algo así como el que publico emprear yo lo tengo trabajando aquí http://camarabinacionaldenegocios.com/

al revisar el codigo de Reedyseth me doy cuenta que a él si se le oculta el ver mas, así que utilizare ese y lo modificare para que salga como ver mas y no lightbox.


pd. el codigo faltante fue error al copiar pues lo tengo en diferentes archivos una disculpa por eso.

saludos, y en cuanto tenga el codigo funcionando lo subo para que este completo :)
  #9 (permalink)  
Antiguo 26/02/2013, 15:29
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 3 meses
Puntos: 36
Respuesta: Ocultar Div y enlaces que lo llaman

Viendo tu pagina se me ocurre una sugerencia, que tal si cuando le das ver mas le das un scroll para que el usuario no tenga que hacerlo manualmente ??

P.D. Ya ando relax :p
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.
  #10 (permalink)  
Antiguo 27/02/2013, 10:18
Avatar de Sherly  
Fecha de Ingreso: septiembre-2008
Ubicación: Valles
Mensajes: 58
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Ocultar Div y enlaces que lo llaman

buena idea, no lo había pensado jaja
  #11 (permalink)  
Antiguo 27/02/2013, 10:48
Avatar de Reedyseth  
Fecha de Ingreso: enero-2009
Ubicación: Chihuahua, México
Mensajes: 419
Antigüedad: 15 años, 3 meses
Puntos: 36
Respuesta: Ocultar Div y enlaces que lo llaman

Es que se cuando le di click pensando como usuario se me hizo algo molesto que se expande y luego tengo que ir manualmente al scroll para ajustarlo, es un plus para tu site.
__________________
Reedyseth
Te ayudo? No olvides dar un +
blog:http://behstant.com/blog
En el blog:Tutoriales de Desarrollo Web PHP, Javascript, BD y más.

Etiquetas: enlaces, funcion
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 17:23.