Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Più istanze dello stesso script nella pagina

    Salve a tutti. Sono nuovo del forum e soprattutto di Java. La domanda infatti potrà sembrarvi banale, ma non so come fare a inserire più istanze dello stesso script (uno slideshow che ho preso da html.it) all'interno della stessa pagina web, per creare più slides contemporaneamente.
    Questo è lo script:

    <script language="JavaScript1.2">

    var slideshow_width='250px'
    var slideshow_height='190px'
    var pause=3000
    var slidebgcolor="#ffffff"

    var dropimages=new Array()
    dropimages[0]="img/img1.jpg"
    dropimages[1]="img/img2.jpg"
    dropimages[2]="img/img3.jpg"

    var droplinks=new Array()
    droplinks[0]="http://www.html.it"
    droplinks[1]="http://flash-mx.it"
    droplinks[2]="http://freephp.html.it"


    var preloadedimages=new Array()
    for (p=0;p<dropimages.length;p++){
    preloadedimages[p]=new Image()
    preloadedimages[p].src=dropimages[p]
    }

    var ie4=document.all
    var dom=document.getElementById

    if (ie4||dom)
    document.write('<div style="position:relative;width:'+slideshow_width+' ;height:'+slideshow_height+';overflow:hidden"><div id="canvas0" style="position:absolute;width:'+slideshow_width+' ;height:'+slideshow_height+';background-color:'+slidebgcolor+';left:-'+slideshow_width+'"></div><div id="canvas1" style="position:absolute;width:'+slideshow_width+' ;height:'+slideshow_height+';background-color:'+slidebgcolor+';left:-'+slideshow_width+'"></div></div>')
    else
    document.write('[img]'+dropimages[0]+'[/img]')

    var curpos=parseInt(slideshow_width)*(-1)
    var degree=10
    var curcanvas="canvas0"
    var curimageindex=linkindex=0
    var nextimageindex=1


    function movepic(){
    if (curpos<0){
    curpos=Math.min(curpos+degree,0)
    tempobj.style.left=curpos+"px"
    }
    else{

    clearInterval(dropslide)
    nextcanvas=(curcanvas=="canvas0")? "canvas0" : "canvas1"
    tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
    var slideimage='[img]'+dropimages[curimageindex]+'[/img]'
    tempobj.innerHTML=(droplinks[curimageindex]!="")? ''+slideimage+'' : slideimage
    nextimageindex=(nextimageindex<dropimages.length-1)? nextimageindex+1 : 0
    setTimeout("rotateimage()",pause)
    }
    }

    function rotateimage(){
    if (ie4||dom){
    resetit(curcanvas)
    var crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
    crossobj.style.zIndex++
    var temp='setInterval("movepic()",50)'
    dropslide=eval(temp)
    curcanvas=(curcanvas=="canvas0")? "canvas1" : "canvas0"
    }
    else
    document.images.defaultslide.src=dropimages[curimageindex]
    linkindex=curimageindex
    curimageindex=(curimageindex<dropimages.length-1)? curimageindex+1 : 0
    }

    function rotatelink(){
    if (droplinks[linkindex]!="")
    window.location=droplinks[linkindex]
    }

    function resetit(what){
    curpos=parseInt(slideshow_width)*(-1)
    var crossobj=ie4? eval("document.all."+what) : document.getElementById(what)
    crossobj.style.left=curpos+"px"
    }

    function startit(){
    var crossobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
    crossobj.innerHTML='[img]'+dropimages[curimageindex]+'[/img]'
    rotateimage()
    }

    if (ie4||dom)
    window.onload=startit
    else
    setInterval("rotateimage()",pause)

    </script>

    Grazie a tutti.

    .a.

  2. #2
    Utente di HTML.it L'avatar di hcka
    Registrato dal
    Oct 2002
    Messaggi
    435
    Sono nuovo del forum e soprattutto di Javascript
    Comunque...

    Nel tuo caso devi modificare il codice, o meglio inserire il codice js in un oggetto (chennesò, mySlideShow), parametrizzando il costruttore oppure un metodo con le immagini da inserire, quindi chiamarlo quante volte vuoi...

  3. #3
    Beh, a dire la verità non ho capito molto, ma penso che intendi che devo sostanzialmente modificare il codice... comunque ho risolto con <iframe>; mi è stato molto d'aiuto questo thread http://www.ilmioforum.com/cgi-bin/fo...w.pl?tid=26205
    In effetti devo studiare un po' di più Javascript...
    grazie e ciao

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.