Hacer aparecer una layer con un hotspot

Hola sheitan,
Tengo 3 layers. En la primera y segunda layer tengo un hotspot en cada una de ellas. He hecho invisibles la segunda y tercera layer.
Lo que me gustaría que pasase es que al pasar el puntero sobre el hotspot de la primera layer me apareciera la segunda (esto SI me sale) y al pasar el puntero por el hotspot de la layer recién aparecida me apareciese la tercera, pero esto último ya no funciona.
El mecanismo que he usado para hacer aparecer la segunda es el mismo que para hacer aparecer la tercera: Le añadido a los hotspot los eventos "mouseOver" y "mouseOut" con "Show-Hide Layer" ¿Por qué en una me sale y en la otra no? ¿Cómo puedo conseguir que me función?
Un saludo
1

1 Respuesta

275 pts.
No se si el código que te envío te solucionara el problema, de todas formas pruébalo.
<html>
<head>
<title>tres capas</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript">
<!--
function MM_findObj(n, d) { //v4.0
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);
if(!x && document.getElementById) x=document.getElementById(n); return x;
}
function MM_showHideLayers() { //v3.0
var i,p,v,obj,args=MM_showHideLayers.arguments;
for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args))!=null) { v=args[i+2];
if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v='hide')?'hidden':v; }
obj.visibility=v; }
}
//-->
</script>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div id="Layer1" style="position:absolute; width:29px; height:26px; z-index:1; left: 95px; top: 150px; visibility: visible" onMouseOver="MM_showHideLayers('Layer2','','show','Layer3','','hide')">uno</div>
<div id="Layer2" style="position:absolute; width:30px; height:30px; z-index:2; left: 153px; top: 160px; visibility: hidden" onMouseOver="MM_showHideLayers('Layer3','','show')" onMouseOut="MM_showHideLayers('Layer2','','hide','Layer3','','hide')">dos</div>
<div id="Layer3" style="position:absolute; width:32px; height:29px; z-index:3; left: 207px; top: 185px; visibility: hidden">tres</div>
</body>
</html>
He estado probando el código que me enviaste y funciona muy bien. Lo que pasa es que es que lo que yo necesito es que me aparezca la layer al pasar por un hotspot que hay en una layer, no sobre cualquier parte de la layer. Esto es porque en esa layer tengo varias hotspots que hacen aparecer una layer diferente cada uno de ellos. ¿Sabes cómo hacer esto?
Un saludo y muchas gracias,
Alberto.
No me cabe en una sola respuesta, ¿Puedes decirme tu e-mail?.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas