Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    26

    setTimeout con Opera funziona?

    Qualcuno sa perchè il setTimeout mi funziona con IE e Mozilla ma non con Opera? ovvero me lo carica ma non me lo aggiorna ogni secondo come dovrebbe...

    qui sotto tutto il codice:

    <html>
    <head>
    <title>Orologio</title>
    <script language="JavaScript">
    <!--
    numImmag = 1
    // Carica in anticipo le immagini
    immagini = new Array()
    for(i = 0; i < 10; i++)
    {
    immagini[i] = new Image()
    immagini[i].src = i + ".gif"
    }

    function scriviora()
    {
    oggi = new Date()
    ore = oggi.getHours()
    if (ore < 10)
    ore = "0" + ore + "" // con l'aggiunta di "" converte il valore in stringa
    else
    ore += "" // converte il valore in stringa; idem per min e sec
    min = oggi.getMinutes()
    if (min < 10)
    min = "0" + min + ""
    else
    min += ""
    sec = oggi.getSeconds()
    if (sec < 10)
    sec = "0" + sec + ""
    else
    sec += ""
    // per selezionare l'immagine del numero da visualizzare,
    // rileva dalla stringa la cifra con substr(posizione,lunghezza)
    document.ora1.src = immagini[ore.substr(0,1)].src
    document.ora2.src = immagini[ore.substr(1,1)].src
    document.min1.src = immagini[min.substr(0,1)].src
    document.min2.src = immagini[min.substr(1,1)].src
    document.sec1.src = immagini[sec.substr(0,1)].src
    document.sec2.src = immagini[sec.substr(1,1)].src
    }
    //-->
    </script>
    </head>
    <body>
    <center>
    <h3>Ora digitale</h3>


    Qui sotto c'è un orologio che segna l'ora in continuazione



    [img]0.gif[/img]
    [img]0.gif[/img]
    [img]duepunti.gif[/img]
    [img]0.gif[/img]
    [img]0.gif[/img]
    [img]duepunti.gif[/img]
    [img]0.gif[/img]
    [img]0.gif[/img]
    </center>
    </body>
    </html>

  2. #2
    nel tuo codice ho visto UNA SOLA setTimeout.
    la funzione setTimeout(funzione, tempo) fa sì che dopo che è trascorso tempo venga chiamata la funzione. E basta.
    Se vuoi che dopo ogni tempo venga chiamata la funzione, non devi usare la setTimeout, ma le setInterval, oppure devi richiamare la seTimeout dall'interno della funzione chiamata.

    HTH
    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  3. #3
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    26
    Però funziona bene con Mozilla e IE, comunque adesso provo come dici tu,
    grazie mille

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    26
    Credo che il problema sia che Opera non supporta "onLoad",
    quindo devo richiamare il setTimeout da una funzione, come tu hai suggerito,
    potresti scrivermi come si fa', premetto che sono poco esperto
    di javascript e ancora non ho assimilato la sintassi...

    io l'ho scritta cosi' ma non va':

    document.setTimeout('settaOra()', 100);

  5. #5
    Originariamente inviato da Arzo
    Credo che il problema sia che Opera non supporta "onLoad",
    Giustamente non lo supporta ... è onload
    Ah se Microsoft non ci avesse abituati a considerare uguali le minuscole e le maiuscole!!!!!!!

    Zappa
    [PC:Presario 2515EU][Cpu:P4@2.3GHz][Ram: 512M][HDU:80G@5400 RPM]
    [Wireless:LinkSys][OS: Ubuntu 9.04 - Jaunty Jackalope]

  6. #6
    Utente di HTML.it
    Registrato dal
    Aug 2006
    Messaggi
    26
    Purtroppo avevo già provato anche in minuscolo,
    onload cmq funziona perchè le immagini me le sostituisce,
    cioè l'ora esatta me la da', ma non aggiorna l'ora ogni secondo,
    come invece IE e Mozzilla fanno regolarmente...
    sono disperato

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.