Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    583

    SetInterval e SetTimeout funzionano una volta sola

    ciao
    Succede una cosa che non capisco
    Vi posto una parte del codice incriminato (la favola di Esopo: il corvo e la volpe)
    Con XP e I.E.7 funziona
    Con Windows8.1 e I.E.11 no

    codice:
    <!DOCTYPE html>
    <html lang="it">
    <head>
    <meta charset="utf-8">  
    <meta http-equiv="imagetoolbar" content="no">  
    </head>
    <body>
    <img id="Formaggio" src="immagini/cacio.gif" style="width:56px; height:40px; position:absolute; left:730px; top:67px; z-index:2; ">
    <script language="JavaScript" type="text/javascript"><!--
    var frmtop = 67
    var pausa
    
    window.onload=function() { 
    //CadeFormaggio()  //  se si usa window.setTimeout(CadeFormaggio,50);   
    pausa = setInterval(CadeFormaggio, 50);
    };
    
    function CadeFormaggio()  { 
    frmtop = frmtop + 80;
    if(frmtop > 510) {
       clearInterval(pausa);
        return}     
    Formaggio.style.top = frmtop;
    //window.setTimeout(CadeFormaggio,50);
    }
    
    --></script>
    </body> </html>
    Con Windows8.1 e I.E.11 sembra che la function CadeFormaggio() venga eseguita una volta sola.
    Ho provato anche con SetTimeout ma il risultato non cambia.

    Quale potrebbe essere il problema?
    rudyF

  2. #2
    prova ad usare:
    codice:
    setInterval(function(){
       CadeFormaggio();
    }, 50);

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    583
    ciao
    grazie per aver risposto

    ho scoperto che non è SetInterval che non funziona ma l'istruzione

    Formaggio.style.top = frmtop;

    Va scritta così

    Formaggio.style.top = frmtop + 'px';


    rudyF

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 © 2025 vBulletin Solutions, Inc. All rights reserved.