Prototype und Pace

lorddeath87

Grünschnabel
Hallo zusammen,

ich habe da mal ein Frage die ich nicht selber lösen kann (vielleicht aus völligem unwissen was das betrifft).
Ich habe nun eine eine PHP erstellt die eine extreme ladezeit besitzt aufgrund von vielen Serverabfragen. Das soll auch so sein.

Nun habe ich eine eine vorschaltung in der der Nutzer etwas eingeben soll, welche ich mit Prototype an die PHP sende (ich hoffe auch gut gelöst) nun hat die ganze Abfragerei in meinem weiterführenden Script eine laufzeit von knapp 6 sekunden. In der Zeit möchte ich das Pace mir seinen ladebalken anzeigt. Nur bekomme ich es absolut nicht in den request eingebaut.

Schreibe ich pace in "onLoad" scheint es zwar kurz auf, allerdings nicht die gesamte Ladezeit.
Wie kann ich nun Pace erklären, dass er die ganze Zeit über den Ladebalken anzeigen soll??


Javascript:
function send() {
       new Ajax.Request('/be.php', {
           method:'post',
       onload: Pace.restart(),
       parameters: $('mailf').serialize(),
           onSuccess: successFunc,
        onFailure: failureFunc
       });
      
       function successFunc(response) {
            var container = $('content');
            var content = response.responseText;
            container.update(content);
         }
         function failureFunc(response) {
            alert("Call is failed" );
        }
       }

Ich danke euch vielmals für die Hilfe und wünsche schon einmal ein schönes Wochenende

Lg
 
Zuletzt bearbeitet:
Hi,

ohne weiter getestet zu haben, ein Tip ins Blaue.

Starte Pace vor dem Ajax-Request und stoppe es in der success- bzw. failure-Methode.
Code:
function send() {
    Pace.restart();
    // Pace.start();

    new Ajax.Request('/be.php', {
        method: 'post',
        parameters: $('mailf').serialize(),
        onSuccess: successFunc,
        onFailure: failureFunc
    });

    function successFunc(response) {
        var container = $('content');
        var content = response.responseText;
        container.update(content);
        Pace.stop();
    }

    function failureFunc(response) {
        alert("Call is failed");
        Pace.stop();
    }
}
Ciao
Quaese
 
Das funktioniert super, vielen Dank.

Zu weiteren Tests habe ich in mein Script ein
PHP:
sleep(10);
eingefügt nur in der Zeit während alles still steht erhalte ich kein Ladesymbol. Kann es sein, dass es dennoch nicht "richtig" (so wie ich es wünsche) funktioniert. Denn ohne die Pause ist alles Super.
 
Zurück