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

    problema messaggio di attesa...

    Salve,
    Ho un problema con INTERNET EXPLORER, nel settaggio della proprieta "style.visibility='visible'"...Segue relativo codice:

    Codice CSS:
    codice:
    <style type="text/css">
    #areaAttesa{border:solid 1px #000000; background-color:#FFFF66; width:200px; height:100px; position:absolute; top:40%; left:40%; visibility:hidden}
    </style>

    Codice Javascript:
    codice:
    <script type="text/javascript" language="javascript">
     	function login(){
    	     document.getElementById('areaAttesa').style.visibility='visible';
                      
                      //Funzione SINCRONA
                      makePOSTRequest('page.php','areaLogin',parameters);
    
                      document.getElementById('areaAttesa').style.visibility='hidden';
    
                  }
    </script>

    Codice HTML:
    codice:
    <button onclick="javascript:login();">Login Prova</button>

    Il problema è che quando eseguo la funzione login() non mi rende visibile il div indicato nella proprietà "document.getElementById('areaAttesa').style.visib ility='visible';"...quindi ho pensato che sia un problema di sincronismo ed ho provato ad inserire un alert subito dopo aver settato la proprietà "style.visibility":

    codice:
    <script type="text/javascript" language="javascript">
     	function login(){
    	     document.getElementById('areaAttesa').style.visibility='visible';
    
                      alert("STOP");
    
                      //Funzione SINCRONA
                      makePOSTRequest('page.php','areaLogin',parameters);
                      document.getElementById('areaAttesa').style.visibility='hidden';
    
                  }
    </script>
    SOPPRESA per magia il div appare, quindi mi viene da pensare che il settaggio "style.visibility" avviene in modo asincrono e quindi passa agli step successivi senza attendere il termine del settaggio...

    DOMANDA:
    Esiste uno modo per risolvere questo problema? :master:


    Grazie Mille
    La matematica non sa nulla delle cause, mentre la ricerca delle cause è compito della filosofia, e la logica, SCIENZA DEL PENSIERO IN QUANTO PENSIERO, ne fornisce lo strumento privilegiato.

    By W.HAMILTON

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Ma dentro al div "areaAttesa" c'è del testo? un immagine? con che estensione (png/gif) comunque questa guida potrebbe esserti utile.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Ma dentro al div "areaAttesa" c'è del testo? un immagine? con che estensione (png/gif) comunque questa guida potrebbe esserti utile.
    C'è del semplice testo.


    Cmq ho provato con la funzione dell'articolo che mi hai indicato; ho riscontrato lo stesso medesimo problema... la funzione del messaggio di attesa viene fuori solo alla FINE dell'esecuzione dello step successivo...

    Preciso che la funzione che segue quella del messaggio di attesa è sincrona, quindi blocca il browser per qualche secondo.
    Ci vorrebbe un metodo per avviare il messaggio di attesa, appena ha terminato, avvia la funzione che sta immediatamente dopo...

    un sistema procedurale del genere:
    STEP1 msgAttesa(); ------>INIZIO ------>FINE ------> STEP2 funzione2();


    e non in modalità asincrona:
    STEP1 msgAttesa(); ------>INIZIO ------>FINE
    STEP2 funzione2(); ------>INIZIO ------>FINE


    RICORDO che questo problema viene fuori solo INTERNET EXPLORER, su firefox funziona correttamente..

    Grazie mille
    La matematica non sa nulla delle cause, mentre la ricerca delle cause è compito della filosofia, e la logica, SCIENZA DEL PENSIERO IN QUANTO PENSIERO, ne fornisce lo strumento privilegiato.

    By W.HAMILTON

  4. #4
    nessuna idea??
    La matematica non sa nulla delle cause, mentre la ricerca delle cause è compito della filosofia, e la logica, SCIENZA DEL PENSIERO IN QUANTO PENSIERO, ne fornisce lo strumento privilegiato.

    By W.HAMILTON

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.