Frame automatisch neu laden
Frank
- javascript
0 conse0 Der Martin
Hallo zusammen!
Ich hab ein Problem: und zwar besteht meine Seite aus drei horizontalen Frames, die Seiten, die oben und unten eingeblendet werden liegen auf meinem Server, die in der Mitte auf einem anderen Server, auf den ich keinen Einfluss habe.
Jetzt möchte ich den mittleren Frame alle 30 Sekunden neu laden lassen. Wichtig dabei ist, dass nur der Frame neu geladen wird und nicht die komplette Seite, da sonst die Scrollposition im mittleren Frame nicht erhalten bleibt.
Kann mir jemand sagen, wie das geht? Ich hab dazu nirgends was gefunden, nur wie man die komplette Seite bzw. eigene Frames neu lädt.
Gruß,
Frank
Hallo,
... nur wie man die komplette Seite bzw. eigene Frames neu lädt.
Versuch genau dieses Script nur auf den mittleren Frame anzuwenden
(mittels parent.framename... )
gruß,
conse
Ich habe die Funktion hier gefunden und in den Header eingefügt:
<script LANGUAGE="JavaScript">
<!--
function reloadPage() {
location.reload(true);
setTimeout("reloadPage()", 4000);
}
setTimeout("reloadPage()", 4000);
//-->
</script>
Die lädt aber die ganze Seite neu. Wenn ich jetzt da wo location.reloadPage() steht parent.Hauptframe.location.reloadPage() hinschreibe, funktioniert das Script gar nicht mehr.
Kannst du mir bitte mal konkret sagen, was da hin muss? Der Frame heißt Hauptframe.
Hallo,
Ich bin nicht besonders bewandert auf dem Gebiete des
JavaScript, deswegen kann ich nur Vermuten.
Hab', auf gut Deutsch, keinen Tau, ob meine Vermutungen so überhaupt
funktionieren können.
parent.Hauptframe.location.reloadPage() hinschreibe, funktioniert das Script gar nicht mehr.
vielleicht:
parent.Hauptframe.location.reload(true);
lg
conse
Ups, da stand sowieso reload, falsch kopiert, also geht nicht.
Kennt sich vielleicht jemand damit aus? Dass ich "nur" versuchen muss, den mittleren Frame zu laden ist mir auch klar, ich habs aber trotzdem in den letzten 2 Stunden nicht hinbekommen! :-(
Hallo Frank,
Kann mir jemand sagen, wie das geht? Ich hab dazu nirgends was gefunden, nur wie man die komplette Seite bzw. eigene Frames neu lädt.
da du selbst sagst, dass der mittlere Frame, den du regelmäßig neu laden willst, von einem anderen Server stammt, hast du mit Javascript keine Chance, auf ihn einzuwirken. Daran hindert dich die "Same Origin Policy", eine Sicherheitsvorschrift in Javascript. Sie bewirkt, dass ein Script nur auf Objekte und Seiten zugreifen darf, die aus der gleichen Quelle (gleiche Domain) stammen wie das Script selbst. Andernfalls wird dem Script der Zugriff verweigert.
Solange es nur drum geht, dass bei dir selbst das Dokument regelmäßig neu geladen wird, kann ich dir die Verwendung von Opera empfehlen, der diese Funktion "Reload every ..." von Haus aus unterstützt. Wenn es bei anderen Besuchern deiner Seite auch funktionieren soll, sehe ich schwarz.
So long,
Martin