Auswahlliste als Verweisliste
zinga
- javascript
Nabend.
Da ich des Javascripts nicht mächtig bin, verwende ich das simple selfHTML-Verweislistenscript, da mir das GoLive Script, das ich vorher verwendete zu kompliziert war, ich kannte nicht mal die diversen verwendeten Tags (<csscriptdict>). Aber das selfHTMLscript hat den großen Nachteil, dass die Links nicht in einem neuen Fenster geöffnet werden, wenn das erwartete Frame nicht vorhanden ist. Früher habe ich dieses Menu aber als Alternativnavigation verwendet. Also kann mir jemand sagen, wie ich hieraus eine Liste mache, die ein neues Fenster öffnet, wenn das erwartete Frame nicht da ist (und zwar nur dann! Anders kriege ich auch noch hin). Ich habe schon ein bisschen rumprobiert, aber meine Minikenntnisse reichen dem Browser wohl nicht...
Hier der Code für den Head
function Go(x) {
if(x == "nothing") {
document.forms[0].elements[0].blur();
return;
}
else {
parent.haupt.location.href = x;
document.forms[0].elements[0].blur();
}
}
}
und das selecttag
<form name="Form" action="#">
<select name="Auswahl" onChange="Go(this.form.Auswahl.options[this.form.Auswahl.options.selectedIndex].value)">
<!-- Eine Menge Options weggekürzt -->
<option value="nothing">Wäle aus...</option>
<option value="horror/horror.html">Horror</option>
<optgroup label="Geschichten">
<option label="Geschichten" value="nothing">Geschichten</option>
<!-- siehe Kommentar drüber -->
<option label=" Henning der Lemming" value="geschichten/hdl.html"> Henning der Lemming</option>
</optgroup>
</select>
</form>
Hi,
Da ich des Javascripts nicht mächtig bin, verwende ich das simple selfHTML-Verweislistenscript, da mir das GoLive Script, das ich vorher verwendete zu kompliziert war, ich kannte nicht mal die diversen verwendeten Tags (<csscriptdict>).
Klingt typisch GoLive (<csscriptdict>) da werden Sachen in den Code gewurschtelt die mit schönem HTML nichts am Hut haben.
Ich gehe mal davon aus, das du den Target nicht für jeden "Link" extra festlegen willst. Sondern das du einfach generell bei nicht vorhandenem Frame "haupt" ein neues Fenster öffnen willst.
So gehts:
else {
if (parent.haupt)
parent.haupt.location.href = x;
else
window.open(x,"Fenster","");
document.forms[0].elements[0].blur();
}
}
}
Gruß
ueps
Nabend.
So, die {}Konflikte sind weg. So muss es aussehn.
function Go(x) {
if(x == "nothing") {
document.forms[0].elements[0].blur();
return;
}
else {
if (parent.haupt) {
parent.haupt.location.href = x;
}
else {
window.open(x,"Fenster","");
document.forms[0].elements[0].blur();
}
}
}
Ich gehe mal davon aus, das du den Target nicht für jeden "Link" extra festlegen willst.
Geht das denn? Wenn, wie?
Hi,
Ich gehe mal davon aus, das du den Target nicht für jeden "Link" extra festlegen willst.
Geht das denn? Wenn, wie?
Ja, du müsstest z.B. im value Attribute des option Tags folgenedes machen:
<option value="seite.html|frameName">...
Und dann im JS Source den String splitten:
Go(x)
var newstr = x.split("|");
var file = newstr[0];
var frame = newstr[1];
dann der Zugriff:
document.frames[frame].location.href = file;
Du musst dann halt noch die Abfragen etc. wie sonst auch machen.
Hoffe du hast es verstanden.
Gruß
ueps