Foros del Web » Programando para Internet » Javascript »

mostrar div con mouseover

Estas en el tema de mostrar div con mouseover en el foro de Javascript en Foros del Web. buentas tengo un script php que carga una serie de información y me gustaria cargar un link con un mouseover que muestre un div .. ...
  #1 (permalink)  
Antiguo 25/06/2014, 19:01
 
Fecha de Ingreso: diciembre-2010
Mensajes: 166
Antigüedad: 13 años, 10 meses
Puntos: 0
mostrar div con mouseover

buentas tengo un script php que carga una serie de información y me gustaria cargar un link con un mouseover que muestre un div .. pero no consigo que funcione.

{

echo("<SECTION>
<a href=\"\" onmouseover=\"getElementByClass(\"informacion\").s tyle.visibility=\"visible\"\"><IMG SRC=\"".$res["ImagenP"]."\" class=\"prueba\"></a><DIV class=\"informacion\">jeajejae</DIV></SECTION>");
}

}
tengo este código y ya he probado de todo y no consigo que funcione.. a ver si vosotros veis algo porque yo ya tengo la cabeza como un bombo xD
  #2 (permalink)  
Antiguo 25/06/2014, 19:16
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: mostrar div con mouseover

Hola

La funcion que se llama getElementsByClass() --en plural--

Si es un solo elemento con esa Class.... puedes acceder directamente a ese elmento como el primero del arreglo con [0], asi:

Código Javascript:
Ver original
  1. getElementsByClass("informacion")[0].style.visibility="visible";
__________________
Salu2!

Última edición por Italico76; 25/06/2014 a las 20:02
  #3 (permalink)  
Antiguo 26/06/2014, 05:31
 
Fecha de Ingreso: diciembre-2010
Mensajes: 166
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: mostrar div con mouseover

sigue sin funcionar .. arg

este es el archivo de css
.informacion {background-color:black;width:100%;height:50%;position:absolut e;bottom:0px;color:white;opacity:.40;visibility:hi dden;}

y el php que carga el codigo:
{

echo("<SECTION> <a href=\"hola.php\"

OnMouseOver=\"getElementsByClass(\'informacion\'). style.display=\'visible\'\">

<IMG SRC=\"".$res["ImagenP"]."\" class=\"prueba\"></a><DIV class=\"informacion\">jeajejae</DIV></SECTION>");
}

}
  #4 (permalink)  
Antiguo 26/06/2014, 06:54
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 7 meses
Puntos: 292
Respuesta: mostrar div con mouseover

Amigo:

Te dare un consejo (no lo tomes como sobervia, tambien soy aprendiz):

No escapes todo ese codigo en Javascript sino que esté todo el tiempo en tu HTML para poder debuguear mejor desde la "consola" del navegador y solo define una variable en JS que si esta en True hace que funcione.... entonces todo lo que haces con PHP es cambiar el valor de esa variable ya se escribiendola ANTES o bien mediante Ajax

Ahora... por que te da error ? yo si encuentro al menos un error:

El resultado de getElementsByClass() debe asignarse a alguna variable sino que estas haciendo ? que esperas hacer con esa seleccion..... nada ?
__________________
Salu2!
  #5 (permalink)  
Antiguo 26/06/2014, 07:03
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.489
Antigüedad: 22 años, 3 meses
Puntos: 2114
Respuesta: mostrar div con mouseover

Con CSS lo tienes más fácil:

Código CSS:
Ver original
  1. a:hover + .informacion {
  2.   display: block;
  3. }

Que, dicho sea de paso, visible no es un valor válido para display. Si lo es para visibility.
__________________
(:
  #6 (permalink)  
Antiguo 26/06/2014, 11:03
 
Fecha de Ingreso: diciembre-2010
Mensajes: 166
Antigüedad: 13 años, 10 meses
Puntos: 0
Respuesta: mostrar div con mouseover

gracias es verdad lo de visibility.. voy más perdido.. he probado como tu me has dicho sólo con css y ahora todo va bien mientras mantengo el mouse encima de la parte que no cubre el div que aparece... pero si me coloco encima empieza a parpadear de forma extraña y el puntero parece que se vuelve loco cambiando de la mano a la flecha y de la flecha a la mano.. parece un fiestero todo loco.

Etiquetas: funcion, mouseover, php
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:16.