Diashow mit HTML-Dateien
Joerg Peschke
- javascript
Hallo,
Ich muss eine Diashow mit HTML-Dateien programmieren. Ich habe ein Frameset,
in dem in dem einen Frame ein Button zum weiterschalten ist der per Javascript
im anderen Frame(namens mainframe) die Dias (sprich verschiedene HTML-Seiten) weiterschaltet.
Da in der "Dia-HTML-Datei" recht viele Bilder drin sind, wollte ich mit
einem Javascript-Reload - Befehl (parent.mainframe.location.reload()) dafuer
sorgen, dass keine gecacheten Seiten genommen werden.
Leider werden auf diese Weise oefter Seiten uebersprungen (bzw. es wird das
gleiche Dia nochmal geladen)
Kann mir irgendjemand weiterhelfen, ich bin am Verzweifeln!!!
Auf die "Dias" hab ich leider keinen Einfluss, weil die automatisch von einem
Programm generiert werden, META-Refreshs o.ae. scheiden deshalb aus.
Moin Joerg,
so ganz habe ich dein Problem zwar nicht verstanden, aber kennst du das Beispiel "Bilderbuch zum Umblättern" (http://selfhtml.teamone.de/dhtml/beispiele/bilderbuch.htm) aus SelfHTML?
Vielleicht hilft dir das ja schon weiter...
Glück auf
Dirk
Moin Joerg,
so ganz habe ich dein Problem zwar nicht verstanden, aber kennst du das Beispiel "Bilderbuch zum Umblättern" (http://selfhtml.teamone.de/dhtml/beispiele/bilderbuch.htm) aus SelfHTML?
Vielleicht hilft dir das ja schon weiter...
Glück auf
Dirk
Danke einstweilen fuer die Loesungen, allerdings werden ja hier immer
Bilder ausgetauscht. Bei mir ginge es aber um den Austausch ganzer
HTML-Dateien inc. der darin enthaltenen Bilder.
Ich fuerchte aber fast, meine Probleme lassen sich gar nicht vermeiden,
weil einfach zu unklar ist, wie Caching und Reloads bei verschiedenen
Browsern und Webservern funktionieren
N'abend, Joerg!
Danke einstweilen fuer die Loesungen, allerdings werden ja hier immer
Bilder ausgetauscht. Bei mir ginge es aber um den Austausch ganzer
HTML-Dateien inc. der darin enthaltenen Bilder.
Ich fuerchte aber fast, meine Probleme lassen sich gar nicht vermeiden,
weil einfach zu unklar ist, wie Caching und Reloads bei verschiedenen
Browsern und Webservern funktionieren
Die Variante von flo ist doch schon ganz nett. Statt die Bilder zu tauschen, setzt du URLs in das Array ein und tauscht mit location.href (bzw. dem für das Frameset passenden href-Objekt) die URLs aus.
PS: Warum löst du eigentlich das Reload aus? Gegen Bilder hilft das ohnehin nicht, und auch nicht gegen Caches und Proxys - ich kanns mir jedenfalls nicht vorstellen.
- Sven Rautenberg
N'abend, Joerg!
Danke einstweilen fuer die Loesungen, allerdings werden ja hier immer
Bilder ausgetauscht. Bei mir ginge es aber um den Austausch ganzer
HTML-Dateien inc. der darin enthaltenen Bilder.
Ich fuerchte aber fast, meine Probleme lassen sich gar nicht vermeiden,
weil einfach zu unklar ist, wie Caching und Reloads bei verschiedenen
Browsern und Webservern funktionieren
Die Variante von flo ist doch schon ganz nett. Statt die Bilder zu tauschen, setzt du URLs in das Array ein und tauscht mit location.href (bzw. dem für das Frameset passenden href-Objekt) die URLs aus.
PS: Warum löst du eigentlich das Reload aus? Gegen Bilder hilft das ohnehin nicht, und auch nicht gegen Caches und Proxys - ich kanns mir jedenfalls nicht vorstellen.
- Sven Rautenberg
Hallo,
Ja, im Endeffekt hab ichs auch so gemacht (Array mit URLs, und dann eine
Funktion, die bei jedem Knopfdruck eine Position weiter im Array schaltet, modulo
der Anzahl der Seiten)
Reloads helfen bei Bildern eh nichts, sagst Du? Na klasse :(
Reloads helfen bei Bildern eh nichts, sagst Du? Na klasse :(
Ich frage mich jedenfalls, welche Probleme du erlebst, die dich zum Reload veranlassen. Im Prinzip sollte ein Browser eine Seite ja vollständig laden. Wenn er dies nicht tut, liegt es an irgendwas - das herauszufinden wäre interessant.
- Sven Rautenberg
Reloads helfen bei Bildern eh nichts, sagst Du? Na klasse :(
Ich frage mich jedenfalls, welche Probleme du erlebst, die dich zum Reload veranlassen. Im Prinzip sollte ein Browser eine Seite ja vollständig laden. Wenn er dies nicht tut, liegt es an irgendwas - das herauszufinden wäre interessant.
- Sven Rautenberg
Die Seite wird ja auch komplett gel;aden (incl. Bilder) - das Problem ist nur, wenn die
Bilder unterdessen veraendert werden, kriegt der Browser das wegen des
Cachens nicht mit. Es sei denn, du klickst auf Reload().
Drum hab ich eben gehofft, mit reload() kann ich dafuer sorgen, immer
eine aktuelle Seite zu haben...
Hallo Joerg !
Habe sowas mal gemacht vor einiger Zeit. Allerdings nicht
mit einem Frameset.
Code:
<html>
<title>Saccala Online</title>
<head>
<script>
function makeArray() {
this.length = makeArray.arguments.length
for (var i = 0; i < this.length; i++) this[i+1] = makeArray.arguments[i]
}
var pix = new makeArray ("1.jpg", "2.jpg", "3.jpg", "4.jpg", "5.jpg", "6.jpg", "7.jpg", "8.jpg", "9.jpg", "10.jpg", "11.jpg", "12.jpg", "13.jpg", "14.jpg", "15.jpg", "16.jpg", "17.jpg", "18.jpg", "19.jpg", "20.jpg", "21.jpg", "22.jpg", "23.jpg", "24.jpg", "25.jpg", "26.jpg", "27.jpg", "28.jpg", "29.jpg");
var nummer = 1;
function wechsle() {
document.image.src = "Images/Budapest/Diashow/dia_"+pix[nummer];
nummer += 1;
if (nummer == 30) nummer = 1;
}
function wechsleback() {
if (nummer == 1) nummer = 30;
if (nummer == 2) nummer = 1;
if (nummer == 3) nummer = 2;
if (nummer == 4) nummer = 3;
if (nummer == 5) nummer = 4;
if (nummer == 6) nummer = 5;
if (nummer == 7) nummer = 6;
if (nummer == 8) nummer = 7;
if (nummer == 9) nummer = 8;
if (nummer == 10) nummer = 9;
if (nummer == 11) nummer = 10;
if (nummer == 12) nummer = 11;
if (nummer == 13) nummer = 12;
if (nummer == 14) nummer = 13;
if (nummer == 15) nummer = 14;
if (nummer == 16) nummer = 15;
if (nummer == 17) nummer = 16;
if (nummer == 18) nummer = 17;
if (nummer == 19) nummer = 18;
if (nummer == 20) nummer = 19;
if (nummer == 21) nummer = 20;
if (nummer == 22) nummer = 21;
if (nummer == 23) nummer = 22;
if (nummer == 24) nummer = 23;
if (nummer == 25) nummer = 24;
if (nummer == 26) nummer = 25;
if (nummer == 27) nummer = 26;
if (nummer == 28) nummer = 27;
if (nummer == 29) nummer = 28;
if (nummer == 30) nummer = 29;
document.image.src = "Images/Budapest/Diashow/dia_"+pix[nummer];
}
//-->
</script>
</head>
<body onLoad="wechsle()">
<center>
<img name="image" border="0" src="Images/Budapest/Diashow/blank.jpg">
<br>
<br>
<input
type="image" src="Images/pfeilleft.gif" width="20" height="22" border="0" alt="zurück" onclick="wechsleback()">
<input
type="image" src="Images/pfeilup.gif" width="20" height="22" border="0" alt="schließen" onclick="window.close()">
<input
type="image" src="Images/pfeilright.gif" width="20" height="22" border="0" alt="vor" onclick="wechsle()">
</center>
<br>
</body>
</html>