- Home
- Categorie
- Coding e Sistemistica
- Javascript & Framework
- script ripetuti
-
script ripetuti
Ciao a tutti,
ho provato a effettuare una ricerca in rete e soprattutto nel forum ma non sono riuscito a trovar cio' che cerco percio' chiedo scusa in anticipo se il post è gia stato trattato!il mio problema è questo:
ho uno script di un semplicissimo slideshow di immagini che devo inserire in due div diversi, una volta fatto mi da il risultato solo in uno dei due div.Essendo completamente a digiuno di javascript....c'è qualcuno che possa indirizzarmi la' dove possa trovare una soluzione?!
Grazie in anticipo!!!
-
Puoi postare il codice javascript che ti da errore? E come lo usi nelle due pagine o div?
-
certo....ecco il codice:
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
<script type="text/javascript">
var imgs=new Array();
imgs[0]="img1.jpg";
imgs[1]="img2.jpg";
imgs[2]="img3.jpg";
imgs[3]="img4.jpg";
var cpt=0;
function changeimages()
{
document.getElementById("ima").src=imgs[cpt];
cpt++;
if(cpt>=imgs.length) cpt=0;
setTimeout("changeimages()",3500);
}
</script>
</head>
<body "onload="changeimages()" >
<div id="object"><img id="ima" name="ima" src="" alt=""></div>
<div id="objectgiu"><img id="ima" name="ima" src="" alt=""></div>ho postato solo i due div dove dovrei richiamare il codice....se serve altro lo posto!
grazie!
-
Prova cosi...
[php]<div id="object"><img id="ima1" name="ima1" src="" alt=""></div>
<div id="objectgiu"><img id="ima2" name="ima2" src="" alt=""></div>[/php]La funzione la cambi cosi[php]
<script type="text/javascript">
var imgs1=new Array();
imgs1[0]="img1.jpg";
imgs1[1]="img2.jpg";
imgs1[2]="img3.jpg";
imgs1[3]="img4.jpg";
var cpt1=0;var imgs2=new Array();
imgs2[0]="img1.jpg";
imgs2[1]="img2.jpg";
imgs2[2]="img3.jpg";
imgs2[3]="img4.jpg";
var cpt2=0;function changeimages1()
{
document.getElementById("ima1").src=imgs1[cpt1];
cpt1++;
if(cpt1>=imgs1.length) cpt1=0;
setTimeout("changeimages1()",3500);
}function changeimages2()
{
document.getElementById("ima2").src=imgs2[cpt2];
cpt2++;
if(cpt2>=imgs2.length) cpt2=0;
setTimeout("changeimages2()",3500);
}</script>
<body "onload="changeimages1(),changeimages2()" >
[/php]Naturalemnte si potrebbe ottimizzare il tutto al meglio.
Non l'ho testato, cosi che errori ti da.
-
Funziona perfettamente....grazie e grazie ancora!!!
Il sito e il forum si continua a confermare davvero splendido e competente!!P.s. ma per ottimizzare cosa intendi??!!
-
Se guardi la struttura dei due script è identica, come gli array delle foto, quindi quasi sicuramente con un po di meno sonno... e un po di studio si riuscirebbe ad usare un unica funzione che copra il caso generale.
-
per lo studio...sto gia' cercando di provvedere...per il sonno....beh li' non ci posso far niente!;) ehehehe....
grazie ancora!
-
Il sonno è il mio eh eh...
Notte...
-
Notte!!:)
-
Ciao Marco...
Scusa se torno sull'argomento ma mi sono accorto che ie 8 il codice non va:(....come posso dire al browser che se incontrasse ie8 si dovrebbe comportare diversamente?! o magari come posso risolvere il problema?!Grazie!!
-
Se il codice non va su IE8 vuol dire che sono stati usati codici non "generali" quindi potrebbe esserci un problema a monte magari...
Lo stai provando in locale?
Perchè in locale IE domanda il permesso...
-
Ciao Marco e grazie ancora per avermi risposto!
Lo sto provando in locale e anche se autorizzo mi compaiono le tipiche crocettine rosse come ad indicare un mancato collegamento alle immagini........!!per il problema a monte non capisco cosa intendi anche perche' con firefox funziona benissimo e credo anche con ie7, il problema inizia con ie8....ora la mia domanda è: poiche' con javascript non ho ancora preso piede, ci sarebe una soluzione o mi tocca inserire un flash invece dello script? e se cosi' fosse ci andrei a guadagnare o a perdere?
Grazie ancora!!
-
Esistono senno tanti altri script, magari associati a JQuery...
Dipende tutto dal tipo di effetto che vuoi che faccia...
-
Io, marco, vorrei solamente inserire tre semplicissime slideshow, senza comandi o effetti, in tre punti diversi della pagina dove ognuna mostri delle immagini diverse!!!
Il punto è che ho trovato una miriade di script ma nessuna funziona contemporaneamente nei tre punti........significa che devo inserire tre script divers??!!
Avresti una soluzione da consigliarmi?!Grazie!!!
-
Piu che tre script diversi tre richiami della stessa funzione con le foto diverse...
Prova a vedere se ti puo essere d'aiuto questa discussione.
Altrimenti appena trovero un po di tempo scrivero un po di codice.
-
Ciao Marco....la discussione è utilissima!!
Ho utilizzato lo script ma sto cercando di capire se per utilizzarlo tre volte mi basta richiamarlo nel body pre tre volte(e se cosi' fosse ci devono essere delle variabili da modificare), o bisogna riscriverlo tre volte nell'header e poi richiamaro ognuno nel body?!
Scusa ma sono davvero ai primissimi passi con il javascript......!!Grazie!
-
Le foto sono le stesse oppure cambiano nei 3 posti?
-
le foto cambiano in tutti e tre gli script......!!
magari falle richiamare da un xml?? che ne dici si potrebbe fare?!
Grazie ancora!!
-
Ho appena elaborato questo script, dovrebbe fare al caso tuo.
[php]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" xml:lang="en">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<title>Test</title>
<script type="text/javascript" src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>
<script type="text/javascript">
var array1=new Array ('1.png','2.png');
var array2=new Array ('3.png','4.png');
var array3=new Array ('5.png','6.png');function ruotaImmagini(myarray,myid) { setInterval (rotateImage, 5000); var images = myarray var index = 1; function rotateImage() { $('#'+myid+' img').fadeOut(1000, function() { $(this).attr('src', images[index]); $(this).fadeIn('slow', function() { if (index == images.length-1) { index = 0; } else { index++; } }); }); } } $(document).ready(function() { ruotaImmagini(array1,'uno') ruotaImmagini(array2,'due') ruotaImmagini(array3,'tre') }); </script> </head> <body> <div id="uno" style="border:4px solid #ff0000"> <img src="1.png" alt="xxxx" /> </div> <div id="due" style="border:4px solid"> <img src="3.png" alt="xxxx" /> </div> <div id="tre" style="border:4px solid"> <img src="5.png" alt="xxxx" /> </div> </body>
</html>
[/php]
-
Grazie e grazie ancora....lo script funziona perfettamente!!! ti chiedo solo l'utima cosa::
perche' se non inserisco questo non funziona:
<script type="text/javascript" src="jqueryjs.googlecode.com/files/jquery-1.3.2.min.js"></script>.
solo perche' sto iniziando a studiare il javascript e vorrei capire....se si puo'!!!
grazie ancora!