Estoy diseñando una página tiene cuatro fotos en miniatura y una grande, quisiera que pulsando la miniatura se cambiara la foto grande. Me gustaría saber si se puede hacer asignando comportamientos a las miniaturas (y cómo se hace) o si hay que hacerlo a través de JavaScript (y cómo se hace).
Sí se puede hacer con javascript: Primero debes poner este código javascript entre <head></head> <script language="JavaScript" type="text/JavaScript"> <!-- function MM_preloadImages() { //v3.0 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array(); var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++) if (a.indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a;}} } function MM_swapImgRestore() { //v3.0 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a)&&x.oSrc;i++) x.src=x.oSrc; } function MM_findObj(n, d) { //v4.01 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 && d.getElementById) x=d.getElementById(n); return x; } function MM_swapImage() { //v3.0 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3) if ((x=MM_findObj(a))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];} } //--> </script> Y después añadir esto en tu código: Enlace para fotos pequeñas: <a href="javascript:;" onClick="MM_swapImage('img_gra','','ruta_img_gra_01',1)"><img src="ruta_img_peq_01" name="img_peq_01" border="0" id="img_peq_01"></a> -"img_peq_01" es el ID de cada foto pequeña, tendrás que hacer tantos enlaces como fotos pequeñas. Cambiando el nombre por "img_peq_02", etc... -"ruta_img_peq_01" es la ruta de cada imagen pequeña. -"img_gra" es el ID de la foto grande. -"ruta_img_gra_01" es la ruta exacta de la foto grande que queremos poner en "img_gra" Enlace para foto grande: <img src="ruta_img_gra_defecto" name="img_gra" id="img_gra"> -"ruta_img_gra_defecto" es la imagen que saldrá por defecto al cargar la página. Sólo tienes que cambiar las que pone "ruta_...", lo demás lo dejas. Pero ten cuidado con los tamaños.