Anzeige

asynchrones nachladen im IE


#1
Ich bin auf Schwierigkeiten gestoßen :eek:

Und zwar hab ich mir aus versch. Tutorials ein kleines Script mehr oder weniger zusammengebastelt, was eine DIV asynchron nachladen soll.. funktionert auch soweit, nur im IE wieder nicht!

Code:
<script src="js//jquery-2.1.1.min.js" type="text/javascript"></script>

<script>
$(document).ready(function(){
setInterval(function(){
$(".txt_ausgabe").load('test.php');
}, 5000);
});
</script>
Ich habe mal gelesen, dass der IE wieder eine Sonderbehandlung braucht.. ich find es aber leider nicht wieder.. vielleicht hat von euch einer einen Link oder Tipp?

Danke!
 

Sempervivum

Erfahrenes Mitglied
#2
Habe noch nie gehört, dass das im IE nicht funktioniert. Was genau funktioniert denn nicht? Wird der Inhalt nicht aktualisiert? Ist in der Console etwas zu erkennen?
 
#3
Genau.. der Inhalt wird nicht aktualisiert...

Ich habe in "txt_ausgabe" den Inhalt nochmal von der test.php einfügen müssen, da bei diesen Script ja die test.php erst nach kurzer Zeit - also den 5 Sekunden der Inhalt geladen wird..

Sprich.. der User ruft die Seite auf, es wird das script in der txt_ausgabe geladen. Verweilt der User dort, läd js dasselbe Script au der test.php nach.

Ich hab noch keine Möglichkeit gefunden, wie man das obige Script so umbauen kann, das es zu Beginn sofort "läd" und dann weiterhin aller 5 Sekunden "nachläd"..

Bei Explorer ist es so, dass er das script aus txt_ausgabe natürlich läd aber das js nicht greift/nicht "neu läd"
Bleibt halt immer der alte Inhalt stehen... ist aber wirklich nur beim IE so...
 

Sempervivum

Erfahrenes Mitglied
#4
Das ist ein Problem, mit dem ich auch schon konfrontiert war. Und zwar liegt es am Cache: Der Browser lädt den Inhalt von test.php aus dem Cache und deshalb werden Änderungen nicht sichtbar. Wenn ich mich recht erinnere, war das beim Chrome auch der Fall. Lösung, indem man einen wechselnden URL-Parameter an die URL anhängt, am einfachsten die Zeit.
Ich hab noch keine Möglichkeit gefunden, wie man das obige Script so umbauen kann, das es zu Beginn sofort "läd" und dann weiterhin aller 5 Sekunden "nachläd"..
Das ist einfach: Die Anweisung für das Laden in eine Funktion legen und diese sofort aufrufen.
Javascript:
        function loadcontent() {
            $(".txt_ausgabe").load('testload.php?time=' + Date.now());
        }
        $(document).ready(function () {
            setInterval(loadcontent, 5000);
            loadcontent();
        });
 
#5
Ah okay, ich hab jetzt mal das script aus der txt_ausgabe herausgenommen und mit deinem Code ohne diese "Starthilfe" laufen lassen... und was soll ich sagen.. ich danke dir! Jetzt funktionert das auch im IE!
 
Anzeige
Anzeige