- Home
- Categorie
- Coding e Sistemistica
- Javascript & Framework
- Aiuto Marquee Javascript
-
Aiuto Marquee Javascript
Ciao a tutti,
Ho deciso di togliere dei marquee che avevo in home e sostituirli con un javascript che simuli un marquee verticale.
I marquee contenevano div con dentro immagini e una scritta (vedi codici sotto).Ne ho trovato uno che funziona abbastanza bene ma che mi visualizza solo metà delle immagini senza motivo apparente:bho:
Un' altro problema è che io vorrei tre linee di scorrimento delle immagini (una in su, una in giù, e l' ultima ancora in su) e così ho duplicato lo script iniziale solo che gli ultimi 2 non funzionano.
Penso dipenda dal fatto che vuole l' id unico, così ho sostituito id con class sia sull' html, che css che nel foglio js, ma ha smesso di funzionare anche la prima riga, così ho rimesso tutto com' era.
Vi posto i codici:
Javascript (foglio scroll.js richiamato in home con <script type="text/javascript" src="scroll.js"></script>)
/*********************************************** * Cross browser Marquee II- © Dynamic Drive (vuvuvu.dynamicdrive.com) * This notice MUST stay intact for legal use * Visit vuvuvu.dynamicdrive.com/ for this script and 100s more. ***********************************************/ var delayb4scroll=2000 //Specify initial delay before marquee starts to scroll on page (2000=2 seconds) var marqueespeed=2 //Specify marquee scroll speed (larger is faster 1-10) var pauseit=1 //Pause marquee onMousever (0=no. 1=yes)? ////NO NEED TO EDIT BELOW THIS LINE//////////// var copyspeed=marqueespeed var pausespeed=(pauseit==0)? copyspeed: 0 var actualheight='' function scrollmarquee(){ if (parseInt(cross_marquee.style.top)>(actualheight*(-1)+8)) //if scroller hasn't reached the end of its height cross_marquee.style.top=parseInt(cross_marquee.style.top)-copyspeed+"px" //move scroller upwards else //else, reset to original position cross_marquee.style.top=parseInt(marqueeheight)+8+"px" } function initializemarquee(){ cross_marquee=document.getElementById("scroll2") cross_marquee.style.top=0 marqueeheight=document.getElementById("scroll").offsetHeight actualheight=cross_marquee.offsetHeight //height of marquee content (much of which is hIdden from view) if (window.opera || navigator.userAgent.indexOf("Netscape/7")!=-1){ //if Opera or Netscape 7x, add scrollbars to scroll and exit cross_marquee.style.height=marqueeheight+"px" cross_marquee.style.overflow="scroll" return } setTimeout('lefttime=setInterval("scrollmarquee()",30)', delayb4scroll) } if (window.addEventListener) window.addEventListener("load", initializemarquee, false) else if (window.attachEvent) window.attachEvent("onload", initializemarquee) else if (document.getElementById) window.onload=initializemarquee
HTML
<div class="top"><h1></h1></div> <div id="scroll" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed"> <div id="scroll2"> <div><a><img src=""></a>Scritta</div> <div><a><img src=""></a>Scritta</div>ecc </div> <div id="scroll" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed"> <div id="scroll2"> <div><a><img src=""></a>Scritta</div> <div><a><img src=""></a>Scritta</div>ecc </div> <div id="scroll" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed"> <div id="scroll2"> <div><a><img src=""></a>Scritta</div> <div><a><img src=""></a>Scritta</div>ecc </div> </div>
CSS
#scroll{ width: 300px; /*marquee width */ height: 500px; /*marquee height */ text-align: center; overflow: hidden; float: left; } #scroll2 { position: absolute; width: 98%; }
Non capisco davvero dove sbaglio....
Ho davvero bisogno dell' aiuto di un esperto.Oltretutto se possibile vorrei eliminare il div interno scroll2 che mi sembra inutile, non ho capito bene a cosa serve.
Vi ringrazio in anticipo per l' aiuto
Ivan;)
-
Nuovo risultato: ho sostituito getelement by Id con get element by ClassName (o classname o Classname) ed in teoria dovrebbe funzionare!
Ho sostituito id con class anche in html e css.Però stavolta nessuna delle 3 colonne si muove!
Perfavore ditemi dove sbaglio!
P.S. E' urgente ho la home devastata!
-
senti anche io stavo cercando un marquee in js ed alla fine sono arrivato a questo che sposta le immagini da destra a sinistra. Non so se può servirti.
Ps. Non so se vanno effettuate delle correzioni ma penso prorpio di si. Se qualcuno può aiutarmi a renderlo ottimale...
-
Ciao best,
grazie per lo script ma a me serve con lo spostamento in verticale (x 3 colonne distinte), in orizzontale semplice ne trovi moti già pronti in rete.Ad ogni modo non preoccuparti, o risolto rinunciando al marquee con un layout più semplice della home.
Ciao
-
Se ti serve ancora avevo trovato un js che faceva scorrere il testo in verticale. Se ti serve fammi sapere che lo ricerco.
-
Si grazie mi faresti un favore.
Comunque anche quello che ho postato a inizio discussione scorre in verticale.
Il problema è che non funziona su tutte e tre le colonne della home e non capisco come mai!