Michael: Problem bei Ausführung

Hallo,

Mit Hilfe von Javascript setze ich eine Art Statusmeldung auf "Vorgang wird ausgeführt...". Unmittelbar danach wird im Skript eine Methode aufgerufen die eine ActiveX Control lädt. Da dieser Aufruf offenbar rechenintensiv ist, wird der Text der zuvor gesetzten Statusmeldung nicht agezeigt.

  
setStatusBarText("Vorgang wird ausgeführt...");  
ladeActiveXConntrol();  

Gibt es eine Lösung für dieses Problem?

Viele Grüsse
Michael

  1. hi,

    Mit Hilfe von Javascript setze ich eine Art Statusmeldung auf "Vorgang wird ausgeführt...". Unmittelbar danach wird im Skript eine Methode aufgerufen die eine ActiveX Control lädt. Da dieser Aufruf offenbar rechenintensiv ist, wird der Text der zuvor gesetzten Statusmeldung nicht agezeigt.

    setStatusBarText("Vorgang wird ausgeführt...");
    ladeActiveXConntrol();

      
    So lange ein in sich geschlossener Javascript-Vorgang nicht beendet ist, sehen sich manche Browser nicht zum neu Rendern, und damit der sichtbaren Umsetzung solcher Veränderungen veranlasst.  
      
    
    > Gibt es eine Lösung für dieses Problem?  
      
    Unterbreche den Vorgang - in dem du den Teil, der das ActiveX-Control initialisiert, leicht zeitverzögert über setTimeout aufrufst.  
      
    gruß,  
    wahsaga  
      
    
    -- 
    /voodoo.css:  
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    
    1. Hi

      Unterbreche den Vorgang - in dem du den Teil, der das ActiveX-Control initialisiert, leicht zeitverzögert über setTimeout aufrufst.

      Ist es denn möglich anschliessend den folgenden Code wieder zu synchronisieren? Folgender Code scheint nicht zu funktionieren.

        
        
      function hauptfunktion() {  
         setStatusBarText("Vorgang wird ausgeführt...");  
         setTimeout(ladeActiveXConntrol(), 500);  
        
         sync();  
        
         // Synchroner Code  
      }  
        
      function ladeActiveXControl() {  
         // Lade  
         // ...  
        
         semaphore = 1;  
      }  
        
        
      var semaphore = 0;  
      function sync() {  
       if(semaphore === 1) {  
        return true;  
       }  
        
       sync();  
       return false;  
      }  
      
      

      Gruss Michael

      1. Moin!

        Unterbreche den Vorgang - in dem du den Teil, der das ActiveX-Control initialisiert, leicht zeitverzögert über setTimeout aufrufst.

        Ist es denn möglich anschliessend den folgenden Code wieder zu synchronisieren? Folgender Code scheint nicht zu funktionieren.

        Javascript muß man nicht synchronisieren, weil es kein Multitasking hat. Es wird exakt EIN Javascript-Befehl zur Zeit ausgeführt.

        - Sven Rautenberg

        --
        "Love your nation - respect the others."