Ho trovato questo simpatico script che genera in js una galleria di immagini:
Lo script funziona perfettamente in locale, lo uploddo sul server con il nome prova.htm e funziona, provo con il nome prova.php e sul server funziona perfettamente.codice:<HTML> <HEAD> <TITLE>HTML.it - il sito italiano sul Web publishing</TITLE> <style> A:link, A:visited { text-decoration: none } A:hover { text-decoration: underline } </style> <script language="JavaScript1.2"> var slideShowSpeed = 3000 var crossFadeDuration = 3 var Pic = new Array() Pic[0] = 'img/img1.jpg' Pic[1] = 'img/img2.jpg' Pic[2] = 'img/img3.jpg' Pic[3] = 'img/img4.jpg' isIE=document.all; isNN=!document.all&&document.getElementById; isN4=document.layers; isHot=false; function ddInit(e){ topDog=isIE ? "BODY" : "HTML"; whichDog=isIE ? document.all.theLayer : document.getElementById("theLayer"); hotDog=isIE ? event.srcElement : e.target; while (hotDog.id!="titleBar"&&hotDog.tagName!=topDog){ hotDog=isIE ? hotDog.parentElement : hotDog.parentNode; } if (hotDog.id=="titleBar"){ offsetx=isIE ? event.clientX : e.clientX; offsety=isIE ? event.clientY : e.clientY; nowX=parseInt(whichDog.style.left); nowY=parseInt(whichDog.style.top); ddEnabled=true; document.onmousemove=dd; } } function dd(e){ if (!ddEnabled) return; whichDog.style.left=isIE ? nowX+event.clientX-offsetx : nowX+e.clientX-offsetx; whichDog.style.top=isIE ? nowY+event.clientY-offsety : nowY+e.clientY-offsety; return false; } function ddN4(whatDog){ if (!isN4) return; N4=eval(whatDog); N4.captureEvents(Event.MOUSEDOWN|Event.MOUSEUP); N4.onmousedown=function(e){ N4.captureEvents(Event.MOUSEMOVE); N4x=e.x; N4y=e.y; } N4.onmousemove=function(e){ if (isHot){ N4.moveBy(e.x-N4x,e.y-N4y); return false; } } N4.onmouseup=function(){ N4.releaseEvents(Event.MOUSEMOVE); } } function hideMe(){ if (isIE||isNN) whichDog.style.visibility="hidden"; else if (isN4) document.theLayer.visibility="hide"; } function showMe(){ if (isIE||isNN) whichDog.style.visibility="visible"; else if (isN4) document.theLayer.visibility="show"; } document.onmousedown=ddInit; document.onmouseup=Function("ddEnabled=false"); var t var j = 0 var p = Pic.length var preLoad = new Array() for (i = 0; i < p; i++){ preLoad[i] = new Image() preLoad[i].src = Pic[i] } function runSlideShow(){ if (document.all){ document.images.SlideShow.style.filter="blendTrans(duration=2)"; document.images.SlideShow.style.filter="blendTrans(duration=crossFadeDuration)"; document.images.SlideShow.filters.blendTrans.Apply(); } if (!isN4) document.images.SlideShow.src = preLoad[j].src; if (isN4) document.layers['theLayer'].document.images['SlideShow'].src = preLoad[j].src; if (document.all){ document.images.SlideShow.filters.blendTrans.Play(); } j = j + 1; if (j > (p-1)) j=0; t = setTimeout('runSlideShow()', slideShowSpeed); } </script> </HEAD> <BODY onload="runSlideShow()" BGCOLOR="white" vlink="blue" link="blue"> <div id="theLayer" style="position:absolute;left:100;top:100;visibility:visible"> <table border="0" bgcolor="#333333" cellspacing="0" cellpadding="2"> <tr> <td> <table border="0" bgcolor="#cccccc" cellspacing="0" cellpadding="5"> <tr> <td> <table border="0" cellspacing="0" cellpadding="0"> <tr> <td id="titleBar" style="cursor:move"> <ilayer onSelectStart="return false"> <layer onMouseover="isHot=true;if (isN4) ddN4(theLayer)" onMouseout="isHot=false"> <font face="Arial" color="#000000">Slideshow di immagini</font> </layer> </ilayer> </td> <td style="cursor:hand" align="right"> <font color=#000000 size=2 face=arial>X </font> </td> </tr> <tr> <td bgcolor="#FFFFFF" style="padding:0px" colspan="2"> <table border="0" cellpadding="0" cellspacing="0"> <tr> <td id="VU"> [img]img/img1.jpg[/img]</td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </td> </tr> </table> </div> <div align="center"> <font face="verdana" size="2"> Clicca per MOSTRARE la galleria</p> Clicca per NASCONDERE la galleria</p> </font> </div> <div align="center"> <font face="verdana" size="1"> (Il layer è trasportabile con il mouse) </font> </div> </BODY> </HTML>
Provo a inserirlo nel mio sito e più precisamente nella pagina index.php dove è comunque l'unico js presente. Carico le img, copio il codice nell'head, l'altra parte nel body e lancio la pagina...
Si apre il popup della galleria e mostra correttamente le immagini in sequenza, anche il bottone chiudi funziona, però come provo a spostare il popup (cosa che nelle altre prove è sempre andato) ottengo questo risultato: la finestra non si muove e IE6 mi restituisce come errore:
riga 93
carattere 3
Argomento non valido
La riga 93 è questa: Pic[0] = 'img/img1.jpg' (dove creo l'array per le immagini)
Allora dico..magari ho ciccato a copiare il codice... provo a inserire nella pagina un include php che inserisce la pagina dello script identica a come l'ho trovata funzionante e... inclusa non funziona!
Cosa può essere? Qualcuno sa aiutarmi? Grazie, ciao

Cosa può essere? Qualcuno sa aiutarmi? Grazie, ciao
Rispondi quotando