Visualizzazione dei risultati da 1 a 8 su 8

Discussione: conflitto tra script

  1. #1

    conflitto tra script

    ciao,
    scusate, ho due script che sono in conflitto. uno è un slideshow mentre l'altro è uno scoller.
    leggendo tra i post ho visto che potrebbe essere un conflitto dei timer. purtroppo non ho conoscenze di javascript , però confrontando i due script ho trovato:

    script 1:
    codice:
    t = setTimeout('runSlideShow()', slideShowSpeed)
    script 2:
    codice:
    setTimeout("rotateslide()",pause)
    potrebbero essere queste due funzioni in conflitto?
    se si come posso risolvere?
    se avete bisogno posto entrambi gli script.
    vi ringrazio molto.

  2. #2
    ok ecco i codici:

    scroller.js

    Codice PHP:
    var scroller_width='180px';
    var 
    scroller_height='120px';
    var 
    bgcolor='#FCF1E4';
    var 
    border_color='#cccccc';
    var 
    pause=6000;

    var 
    scrollercontent=new Array()
    scrollercontent[0]='Visita [url="http://www.html.it"]Html.it[/url] e contribuisci a migliorare il mondo... oltre che i nostri accessi unici :)'
    scrollercontent[1]='Partecipa al [url="http://forum.html.it"]Forum[/url] e contribuisci a migliorare il problema dello smog rimanendo in casa.'
    scrollercontent[2]='Ogni 45/60 minuti passati davanti al pc ricordati di fare una breve pausa... fa bene a te e fa bene allo schermo che non ne può più di vedere sempre la tua faccia che lo fissa.'


    var ie4=document.all
    var dom=document.getElementById&&navigator.userAgent.indexOf("Opera")==-1

    if (ie4||dom){
    document.write('<div align="left" style="position:relative;width:'+scroller_width+';height:'+scroller_height+';overflow:hidden; border: 1px '+border_color+'; border-style: solid;"><div class="tabella"  id="canvas0" style="position:absolute;background-color:'+bgcolor+';width:'+scroller_width+';height:'+scroller_height+';top:'+scroller_height+';filter:alpha(opacity=20);-moz-opacity:0.2;"></div><div class="tabella" id="canvas1" style="position:absolute;background-color:'+bgcolor+';width:'+scroller_width+';height:'+scroller_height+';top:'+scroller_height+';filter:alpha(opacity=20);-moz-opacity:0.2;"></div></div>')
    } else if(
    document.layers){
    document.write('<ilayer id=tickernsmain visibility=hide width='+scroller_width+' height='+scroller_height+' bgColor='+bgcolor+'><layer id=tickernssub width='+scroller_width+' height='+scroller_height+' left=0 top=0>'+scrollercontent[0]+'</layer></ilayer>')
    }

    var 
    curpos=scroller_height*(1)
    var 
    degree=10
    var curcanvas="canvas0"
    var curindex=0
    var nextindex=1

    function moveslide(){
    if (
    curpos>0){
    curpos=Math.max(curpos-degree,0)
    tempobj.style.top=curpos+"px"
    }
    else{
    clearInterval(dropslide)
    if (
    crossobj.filters)
    crossobj.filters.alpha.opacity=100
    else if (crossobj.style.MozOpacity)
    crossobj.style.MozOpacity=1
    nextcanvas
    =(curcanvas=="canvas0")? "canvas0" "canvas1"
    tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
    tempobj.innerHTML=scrollercontent[curindex]
    nextindex=(nextindex<scrollercontent.length-1)? nextindex+0
    setTimeout
    ("rotateslide()",pause)
    }
    }

    function 
    rotateslide(){
    if (
    ie4||dom){
    resetit(curcanvas)
    crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
    crossobj.style.zIndex++
    if (
    crossobj.filters)
    document.all.canvas0.filters.alpha.opacity=document.all.canvas1.filters.alpha.opacity=20
    else if (crossobj.style.MozOpacity)
    document.getElementById("canvas0").style.MozOpacity=document.getElementById("canvas1").style.MozOpacity=0.2
    var temp='setInterval("moveslide()",50)'
    dropslide=eval(temp)
    curcanvas=(curcanvas=="canvas0")? "canvas1" "canvas0"
    }
    else if (
    document.layers){
    crossobj.document.write(scrollercontent[curindex])
    crossobj.document.close()
    }
    curindex=(curindex<scrollercontent.length-1)? curindex+0
    }

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

    function 
    startit(){
    crossobj=ie4? eval("document.all."+curcanvas) : domdocument.getElementById(curcanvas) : document.tickernsmain.document.tickernssub
    if (ie4||dom){
    crossobj.innerHTML=scrollercontent[curindex]
    rotateslide()
    }
    else{
    document.tickernsmain.visibility='show'
    curindex++
    setInterval("rotateslide()",pause)
    }
    }

    if (
    ie4||dom||document.layers)
    window.onload=startit 

    slide.js

    Codice PHP:
    // Set slideShowSpeed (milliseconds)
    var slideShowSpeed 5000

    // Duration of crossfade (seconds)
    var crossFadeDuration 3

    // Specify the image files
    var Pic = new Array() // don't touch this
    // to add more images, just continue
    // the pattern, adding to the array below

    Pic[0] = 'immagini/ban1.gif'
    Pic[1] = 'immagini/ban2.gif'
    Pic[2] = 'immagini/ban3.gif'
    Pic[3] = 'immagini/ban4.gif'
    Pic[4] = 'immagini/ban5.gif'

    // =======================================
    // do not edit anything below this line
    // =======================================

    var t
    var 0
    var Pic.length

    var preLoad = new Array()
    for (
    0pi++){
       
    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()      
       }
       
    document.images.SlideShow.src preLoad[j].src
       
    if (document.all){
          
    document.images.SlideShow.filters.blendTrans.Play()
       }
       
    1
       
    if (> (p-1)) j=0
       t 
    setTimeout('runSlideShow()'slideShowSpeed)


  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    quando richiami runSlideShow()?
    se hai <body onload="runSlideShow()">
    aggiungi il richiamo anche all' altra funzione
    <body onload="runSlideShow();startit()">
    e rimuovi questa riga
    window.onload=startit

    ciao

  4. #4
    ciao xinod grazie per la risposta.

    dunque

    quando richiami runSlideShow()?
    se hai <body onload="runSlideShow()">
    aggiungi il richiamo anche all' altra funzione
    <body onload="runSlideShow();startit()">
    e rimuovi questa riga
    window.onload=startit
    ho modificato il file come mi hai detto:

    codice:
    <body onload="runSlideShow();startit()">
    solo che adesso mi funziona lo script slide, ma non lo script scroller, cioè succede il contrario di prima

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    è possibile vedere la pagina online? facciamo prima

  6. #6
    azz..purtroppo no

    però gli script sono completi cosi

    lo slide lo richiamo sul <body> con:

    codice:
    <body onload="runSlideShow();startit()"> 
    <table border="0" cellpadding="0" cellspacing="0" />
    <tr>
    <td id="VU" height=76 width=396 />
    [img]immagini/ban1.gif[/img]</td>
    </tr>
    </table>
    mentre lo scroller semplicenmente:
    codice:
    <script language="JavaScript" type="text/JavaScript" src="scroller.js">
    facendo un copia/incolla dovresti riuscire a farli funzionare...

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    cmq non avevo notato che c' era un if prima del window.onload

    if (ie4||dom||document.layers)
    window.onload=startit

    devi togliere anche la riga precedente

    a me funziona
    ciao

  8. #8
    funziona
    grazie mille!

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.