Hallo
Die Website, die ich (Anfänger) z.Z. entwickle, hat einen Frameset mit den Frames home, info und pdf. Von der in home geladenen home.html aus kann man eine von acht gleichartigen Dateien im Frame info laden. Von jeder dieser Dateien aus kann man eine von mehreren PDF-Dateien im Frame pdf laden. Ziel ist es, nur beim ersten Laden einer der PDF-Dateien zusätzlich im Frame home die Hilfsdatei keineliste.html zu öffnen.
Nach derzeitigem Stand öffnet die Hilfsdatei immer wieder, bis die in info geladene Datei nochmals oder eine der anderen sieben Datei geladen wird. Das ist der Fehler.
Um das zu realisieren, setze ich in index.html ein Cookie, dessen Inhalt beim Schließen der Hilsdatei geändert wird. Beim Öffnen jeder der PDF-Dateien wird der Cookie-Inhalt abgefragt, und nur, wenn er noch nicht geändert wurde, erscheint die Hilfsdatei. Die Scripts sehen wie folgt aus:
Falls das von Bedeutung ist: keineliste.html befindet sich zusammen mit home.htmlim Hauptverzeichnis, die acht gleichartigen Dateien zusammen mit den von dort jeweils aufrufbaren PDF-Dateien in jeweils einem Unterverzeichnis davon.
Das Fehlerbild nochmal mit anderen Worten:
- Wenn ich nach dem Öffnen der Website in einer der acht Dateien auf Datei 1 klicke, öffnet sich erstmalig die Hilfsdatei keineliste.html. (Das ist OK.)
- Mit Schließen der Hilfsdatei (= Einblenden der Homepage) wird über die Funktion homeein(); der Cookie-Wert geändert. (Das funktioniert auch, kann ich im Browser FF und GC nachsehen.)
- Wenn ich dann Datei 2 anklicke, öffnet sich die Hilfsdatei wieder. (Das ist nicht OK.)
- Erst, wenn ich die Datei mit den Links Datei 1, Datei 2 usw. nochmals oder eine der anderen sieben gleichartigen Dateien lade, öffnet sich die Hilfsdatei bei Anwahl einer PDF-Datei nicht mehr.
Was habe ich falsch gemacht?
mfg
P.S. Dass die Verwendung von Framesets out ist, braucht ihr nicht zu erwähnen, das weiß ich.
Die Website, die ich (Anfänger) z.Z. entwickle, hat einen Frameset mit den Frames home, info und pdf. Von der in home geladenen home.html aus kann man eine von acht gleichartigen Dateien im Frame info laden. Von jeder dieser Dateien aus kann man eine von mehreren PDF-Dateien im Frame pdf laden. Ziel ist es, nur beim ersten Laden einer der PDF-Dateien zusätzlich im Frame home die Hilfsdatei keineliste.html zu öffnen.
Nach derzeitigem Stand öffnet die Hilfsdatei immer wieder, bis die in info geladene Datei nochmals oder eine der anderen sieben Datei geladen wird. Das ist der Fehler.
Um das zu realisieren, setze ich in index.html ein Cookie, dessen Inhalt beim Schließen der Hilsdatei geändert wird. Beim Öffnen jeder der PDF-Dateien wird der Cookie-Inhalt abgefragt, und nur, wenn er noch nicht geändert wurde, erscheint die Hilfsdatei. Die Scripts sehen wie folgt aus:
Code:
/* in index.html */
document.cookie = "hilfetextein=" + "ja";
/* in scripte.js */
var cname;
var cvalue;
function getCookies () {
cookies = {};
var all = document.cookie;
if (all === "")
return cookies;
var list = all.split("; ");
for(var i = 0; i < list.length; i++) {
var cookie = list[i];
var p = cookie.indexOf("=");
cname = cookie.substring(0,p);
cvalue = cookie.substring(p+1);
cvalue = decodeURIComponent(cvalue); /
cookies[cname] = cvalue;
}
return cookies;
}
getCookies();
function lhilfeein (){
if (cvalue == "ja") {
open("../keineliste.html", "home");
} else {
open("../home.html", "home"); }
}
function homeein(){
if (cvalue == "ja") {
document.cookie = "hilfetextein=" + "nein";
open("home.html", "home");
} else {
open("home.html", "home"); }
}
/* in den acht Dateien zum Aufruf einer PDF-Datei insgesamt 180 gleichartige Links wie */
<a href="datei1.pdf" onclick="abkAktuell = 'datei1abk.html'; lhilfeein();">Datei 1</a><br>
<a href="datei2.pdf" onclick="abkAktuell = 'datei2abk.html'; lhilfeein();">Datei 2</a><br>
/* usw.
(Bei Aufruf einer PDF-Datei wird durch Setzen der globalen Variablen abkAktuell das Öffnen
der jeweils passende Abkürzungsliste vorbereitet; das funktioniert und hat mit dem
beschriebenen Problem wohl nichts zu tun)
*/
/* in der Hilfsdatei keineliste.html */
<p><a href="home.html" target="home" onclick="homeein(); return false;">
Homepage wieder einblenden</a></p>
Falls das von Bedeutung ist: keineliste.html befindet sich zusammen mit home.htmlim Hauptverzeichnis, die acht gleichartigen Dateien zusammen mit den von dort jeweils aufrufbaren PDF-Dateien in jeweils einem Unterverzeichnis davon.
Das Fehlerbild nochmal mit anderen Worten:
- Wenn ich nach dem Öffnen der Website in einer der acht Dateien auf Datei 1 klicke, öffnet sich erstmalig die Hilfsdatei keineliste.html. (Das ist OK.)
- Mit Schließen der Hilfsdatei (= Einblenden der Homepage) wird über die Funktion homeein(); der Cookie-Wert geändert. (Das funktioniert auch, kann ich im Browser FF und GC nachsehen.)
- Wenn ich dann Datei 2 anklicke, öffnet sich die Hilfsdatei wieder. (Das ist nicht OK.)
- Erst, wenn ich die Datei mit den Links Datei 1, Datei 2 usw. nochmals oder eine der anderen sieben gleichartigen Dateien lade, öffnet sich die Hilfsdatei bei Anwahl einer PDF-Datei nicht mehr.
Was habe ich falsch gemacht?
mfg
P.S. Dass die Verwendung von Framesets out ist, braucht ihr nicht zu erwähnen, das weiß ich.