B
barndelie
Gast
Hallo zusammen,
ich habe ein Javascript von meinen Dozenten bekommen welches ich für meine Webseite www.hks-techniker.de umgeschrieben habe (links das Baumdiagram). Leider funktioniert es nur im IE-Explorer und nicht in Firefox.
Könnt ihr mir sagen wo der Fehler liegt? Danke im voraus
<html>
<head>
<title>Baummen&</title>
<script language="JavaScript1.2" type="text/javascript">
<!--
/*
Script: Baummenü
Version: 1.01
Datum: 31.05.2000
Autor: Andreas Zierhut
E-Mail: Andreas.Zierhut@gmx.de
Homepage: http://www.dhtml-now.de
Beschreibung: Erstellt ein Menü im Stil des Window-Explorers
Copyright (c) 2000 by Andreas Zierhut. Alle Rechte vorbehalten.
Das Script darf kostenlos weiterverwendet werden.
Der Kommentar darf nicht aus dem Script entfernt werden.
*/
/*
Update am 31.05.2000
~~~~~~~~~~~~~~~~~~~~
- Neuer Parameter: CloseSubfolders
bestimmt, ob eventuell geöffnete Unterordner geschlossen werden sollen
- Gestrichelter Rahmen erscheint im IE nicht mehr bei Klick auf einen Link / Ordner
- Für einen Ordner kann ein Link angegeben werden (nur sinnvoll in Frames)
- Die Links werden im NN nicht mehr überlagert, sondern erst wird der Platz reserviert
und anschließend werden die neuen Links angezeigt
*/
var ie = document.all ? true : false;
var ns = document.layers ? true : false;
var marked = false;
var itt = new Array();
var itc;
var allitc = 0;
function Folder(Ordner, Nr, Name, Text, URL, Target, ImgName, Font, Icon, ClickIcon)
{
this.Ordner = Ordner;
this.Nr = Nr;
this.Name = Name;
this.Text = Text;
this.URL = URL;
if (URL) {
if (Target)
this.Target = Target;
else
this.Target = BaseTarget;
}
else
this.Target = '';
this.ImgName = ImgName;
this.Font = Font;
this.Icon = Icon;
if (ClickIcon)
this.ClickIcon = ClickIcon;
else
this.ClickIcon = Icon;
this.isFolder = true;
this.Items = new Array();
this.addFolder = addFolder;
this.addLink = addLink;
this.getLink = getLink;
this.build = build;
this.IconSpace = 5;
this.MarginTop = 4;
this.MarginBottom = 4;
}
function addFolder(Unterordner, Text, URL, Target, Font, Icon, ClickIcon)
{
allitc++;
this.Items[this.Items.length] = new Folder(this.Name, this.Items.length, Unterordner, Text, URL, Target, 'ExplImg'+allitc, Font, Icon, ClickIcon);
window[Unterordner] = this.Items[this.Items.length-1];
window[Unterordner].ParentNr = this.Items.length-1;
window[Unterordner].ParentOrdner = this;
}
function Link(Text, URL, Target, ImgName, Font, Icon)
{
this.Text = Text;
this.URL = URL;
if (Target)
this.Target = Target;
else
this.Target = BaseTarget;
this.ImgName = ImgName;
this.Font = Font;
this.Icon = Icon;
this.getLink = getLink;
this.isFolder = false;
this.IconSpace = 5;
this.MarginTop = 4;
this.MarginBottom = 4;
}
function addLink(Text, URL, Target, Font, Icon)
{
allitc++;
this.Items[this.Items.length] = new Link(Text, URL, Target, 'ExplImg'+allitc, Font, Icon);
}
function getLink()
{
var A;
if (!this.isFolder)
A = '<a href="'+this.URL+'" target="'+this.Target+'" onFocus="this.blur()"';
else
A = '<a href="'+(this.URL ? this.URL : 'javascript:void(0)')+'"'+(this.Target ? ' target="'+this.Target+'"' : '')+' onClick="openFolder(\''+this.Ordner+'\', '+this.Nr+', \''+this.Name+'\');return false;" onFocus="this.blur()"';
return('<table border=0 cellspacing=0 cellpadding=0>' + (this.MarginTop ? '<tr><td>'+sp(1,this.MarginTop)+'</td></tr>' : '') +
'<tr><td nowrap>' + A + ' class="'+this.Font+'">'+this.Icon.getTag(this.ImgName)+sp(this.IconSpace,1)+this.Text+'</a></td></tr>' +
(this.MarginBottom ? '<tr><td>'+sp(1,this.MarginBottom)+'</td></tr>' : '') + '</table>');
}
function build()
{
var Style = '<style type="text/css">\n';
for (var i=0; i < Fonts.length; i++)
Style += '.' + Fonts.Name + ' { ' + Fonts.getStyle() + ' }\n';
Style += '</style>';
document.write(Style);
var its = FirstFolder.Items;
itc = 0;
for (var i=0; i < its.length; i++) {
var PosLeft = Left(itt[itc]);
var PosTop = Top(itt[itc])+Height(itt[itc]);
if (!i) {
PosLeft += StartX; PosTop += StartY;
if (marked) { PosLeft += Left('ExPos'); PosTop += Top('ExPos'); }
}
itc = free();
if (ns)
with(document.ids[itt[itc]]) { position = 'absolute'; left = PosLeft; top = PosTop; }
its.LName = itt[itc];
document.write('<div id="'+itt[itc]+'"' + (ie ? ' style="position: absolute; left: '+PosLeft+'; top: '+PosTop+'"' : '') + '>'+its.getLink()+'</div>');
}
}
var FolderTree = new Array();
function openFolder(Ordner, Nr, Unterordner)
{
var fol = window[Unterordner];
var FNr = offen(fol);
if (FNr != -1) {
if (ns)
document[fol.LName].document.images[0].src=fol.Icon.Picture.src;
else
document[fol.ImgName].src = fol.Icon.Picture.src;
var tmpo = FolderTree[FNr].ParentOrdner;
var tmpn = FolderTree[FNr].ParentNr;
schliessen(FNr);
arr.getLayers(tmpo, tmpn);
for (var i=1; i < arr.Layers.length; i++)
move(arr.Layers, null, RTop(arr.Layers[i-1]) + Height(arr.Layers[i-1]));
}
else {
if (ns)
document[fol.LName].document.images[0].src=fol.ClickIcon.Picture.src;
else
document[fol.ImgName].src = fol.ClickIcon.Picture.src;
if (CloseSubfolders)
for (var i=0; i<window[Ordner].Items.length; i++)
if (window[Ordner].Items.isFolder && offen(window[Ordner].Items) != -1)
openFolder(Ordner, i, window[Ordner].Items.Name, null);
FolderTree[FolderTree.length] = fol;
window[Unterordner].Nr = Nr;
var its = fol.Items;
var op = window[Ordner].Items[Nr].LName;
for (var i=0; i < its.length; i++) {
itc = free();
var Name = itt[itc];
make(Name);
hide(Name);
move(Name, Left(op)+Indent, RTop(!i ? op : its[i-1].LName) + Height(!i ? op : its[i-1].LName));
its.LName = Name;
its.it = itc;
write(Name, its.getLink());
}
arr.getLayers(window[Ordner], Nr);
for (var i=1; i < arr.Layers.length; i++)
move(arr.Layers, null, RTop(arr.Layers[i-1]) + Height(arr.Layers[i-1]));
for (var i=0; i < its.length; i++)
show(its.LName);
}
}
var arr = new MyArr();
function MyArr() { this.Layers = null; this.getLayers = getLayers; }
var start;
function getLayers(Ordner, Nr, NeuOrdner)
{
if (Nr != -1) { this.Layers = new Array(); start = false; } else Nr = 0;
if (!NeuOrdner) NeuOrdner = FirstFolder;
var akt = NeuOrdner.Items;
for (var i=0; i < akt.length; i++) {
if (i == Nr && Ordner == NeuOrdner && !start)
start = true;
if (start)
this.Layers[this.Layers.length] = akt.LName;
if (akt.Items && offen(akt) != -1)
this.getLayers(Ordner, -1, akt);
}
}
function schliessen(FNr)
{
var fol = FolderTree[FNr];
var its = fol.Items;
for (var i=0; i < its.length; i++) {
hide(its.LName);
itt[its.it] = null;
}
FolderTree[FNr] = FolderTree[FolderTree.length-1];
FolderTree = FolderTree.slice(0, -1);
for (var i=0; i < its.length; i++)
if (its.Items && offen(its) != -1)
schliessen(offen(its));
}
function offen(Ordner)
{
for (var i=0; i < FolderTree.length; i++)
if (FolderTree == Ordner)
return i;
return -1;
}
function free()
{
for (var i=0; i < itt.length; i++) {
if (!itt) {
itt = 'Link'+i;
return i;
}
}
itt[itt.length] = 'Link'+itt.length;
return itt.length-1;
}
function Icons(ieURL, nsURL, Breite, Hoehe)
{
this.Picture = new Image();
if (document.all || !nsURL)
this.Picture.src = ieURL;
else
this.Picture.src = nsURL;
this.Breite = Breite;
this.Hoehe = Hoehe;
this.getTag = getTag;
}
function getTag(Name)
{
return('
');
}
function Font(Name, fontColor, fontFamily, fontSize, fontWeight, fontStyle, textDecoration)
{
this.Name = Name;
this.fontColor = fontColor;
this.fontFamily = fontFamily;
this.fontSize = fontSize;
this.fontWeight = fontWeight;
this.textDecoration = textDecoration;
this.fontStyle = fontStyle;
this.getStyle = getStyle;
}
function getStyle()
{
return('color: '+this.fontColor+'; font-family: '+this.fontFamily+'; font-size: '+this.fontSize+'; font-weight: '+this.fontWeight+'; text-decoration: '+this.textDecoration+'; font-style: '+this.fontStyle+';');
}
function mark()
{
marked = true;
if (ie)
document.write('<span id="ExPos">'+sp(1,1)+'</span>');
else if (ns)
document.write('<ilayer name="ExPos">'+sp(1,1)+'</ilayer>');
}
function reserve(Hoehe)
{
if (ns)
document.write('<table border=0 cellspacing=0 cellpadding=0 height="'+Hoehe+'"><tr><td>'+sp(1,1)+'</td></tr></table>');
}
function Left(l)
{
if (ns && document[l])
return document[l].pageX;
else if (ie && document.all[l])
return absLeft(document.all[l]);
return 0;
}
function RTop(l){if(document.all) { if(document.all[l])return(document.all[l].style.posTop); } else return(Top(l)); return 0}
function Top(l)
{
if (ns && document[l])
return document[l].pageY;
else if (ie && document.all[l])
return absTop(document.all[l]);
return 0;
}
function Width(l)
{
if (ns && document[l])
return document[l].document.width;
else if (ie && document.all[l])
return document.all[l].offsetWidth;
return 0;
}
function Height(l)
{
if (ns && document[l])
return document[l].document.height;
else if (ie && document.all[l])
return document.all[l].offsetHeight;
return 0;
}
function absLeft(l)
{
if (l.offsetParent) return (l.offsetLeft + absLeft(l.offsetParent));
else return (l.offsetLeft);
}
function absTop(l)
{
if (l.offsetParent) return (l.offsetTop + absTop(l.offsetParent));
else return (l.offsetTop);
}
function sp(w,h)
{
if (ie) return('
');
else if (ns) return('<spacer type=block width='+w+' height='+h+'>');
return;
}
function make(l)
{
if (ns && !document[l])
document[l] = new Layer(1);
else if (ie && !document.all[l])
document.body.insertAdjacentHTML('AfterBegin', '<span id="'+l+'" style="position: absolute">&</span>');
}
function show(l)
{
if (ie) document.all[l].style.visibility = 'visible';
else if (ns) document[l].visibility = 'show';
}
function hide(l)
{
if (ie) document.all[l].style.visibility = 'hidden';
else if (ns) document[l].visibility = 'hide';
}
function move(l,x,y)
{
if (ie) { if(x) document.all[l].style.posLeft=x; if(y) document.all[l].style.posTop=y; }
else if (ns) { if(x) document[l].pageX=x; if(y) document[l].pageY=y; }
}
function write(l,i)
{
if (ie) document.all[l].innerHTML = i;
else if (ns) { with(document[l].document) { open(); write(i); close(); } }
}
//-->
</script>
<base target="Hauptframe">
<body bgcolor="#0099FF">
</head>
<body>
<script language="JavaScript1.2" type="text/javascript">
<!--
if (ie || ns) {
mark();
reserve(1000);
}
//-->
</script>
<script language="JavaScript1.2" type="text/javascript">
<!--
/* Einstellungen/Parameter */
//-------------------------------//
var Fonts = new Array();
Fonts[Fonts.length] = new Font('Ebene1Font', '#000060', 'Arial,Helvetica,Sans-Serif', '75%', '600', 'normal', 'none');
Fonts[Fonts.length] = new Font('Ebene2Font', '#000090', 'Arial,Helvetica,Sans-Serif', '75%', '600', 'normal', 'none');
Fonts[Fonts.length] = new Font('Ebene3Font', '#0000C0', 'Arial,Helvetica,Sans-Serif', '75%', '600', 'normal', 'none');
var StartX = 0;
var StartY = 0;
var BaseTarget = '_top';
var CloseSubfolders = true;
var Indent = 20;
var Startseite = new Icons('\Buttons/buttonB1.jpg', null, 130, 22);
var Startseite2 = new Icons('\Buttons/buttonC1.jpg', null, 130, 22);
var Heizung = new Icons('\Buttons/buttonE1.jpg', null, 130, 22);
var Heizung2 = new Icons('\Buttons/buttonF1.jpg', null, 130, 22);
var Klima = new Icons('\Buttons/button16.jpg', null, 130, 22);
var Klima2 = new Icons('\Buttons/button17.jpg', null, 130, 22);
var Sanitär = new Icons('\Buttons/button18.jpg', null, 130, 22);
var Sanitär2 = new Icons('\Buttons/button19.jpg', null, 130, 22);
var Info = new Icons('\Buttons/button20.jpg', null, 130, 22);
var Info2 = new Icons('\Buttons/button21.jpg', null, 130, 22);
var Forum = new Icons('\Buttons/button1D.jpg', null, 130, 22);
var Forum2 = new Icons('\Buttons/button1E.jpg', null, 130, 22);
var Gast = new Icons('\Buttons/Gaestebuch/button2A.jpg', null, 130, 22);
var Gast1 = new Icons('\Buttons/Gaestebuch/button2B.jpg', null, 130, 22);
var Kontakt = new Icons('\Buttons/button22.jpg', null, 130, 22);
var Kontakt2 = new Icons('\Buttons/button23.jpg', null, 130, 22);
var Infoboard = new Icons('\Buttons/button1A.jpg', null, 130, 22);
var Infoboard2 = new Icons('\Buttons/button1B.jpg', null, 130, 22);
var Bild = new Icons('\Bilder/Start.jpg', null, 130, 120);
var Ic1 = new Icons('\Bilder/folder_images.gif', null, 15, 15);
var Ic2 = new Icons('\Bilder/icon_padlock.gif', null, 15, 15);
var Open = new Icons('\Buttons/open.gif', null, 20, 20);
var Close = new Icons('\Buttons/close.gif', null, 20, 20);
var FirstFolder = new Folder(null,null,'FirstFolder');
FirstFolder.addFolder('', '', '', null, 'EbenelFont',Bild, null);
FirstFolder.addLink('', '\haupt.htm"', 'Hauptframe', 'EbenelFont',Startseite, Startseite2);
FirstFolder.addFolder('Heizung', '', '', null, 'EbenelFont',Heizung, Heizung2);
Heizung.addLink('Privat', '\Privat/Heizung/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic2);
Heizung.addLink('Programme', '\Programme/Heizung/Programme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Heizung.addFolder('Herstellerverzeichnis1', 'Herstellerverzeichnis', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis1.addLink('Kessel', '\Herstellerverzeichnis/Heizung/Kessel.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Heizkörper', '\Herstellerverzeichnis/Heizung/Heizkoerper.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Armarturen', '\Herstellerverzeichnis/Heizung/Armaturen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Rohre', '\Herstellerverzeichnis/Heizung/Rohre.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Fernwärme', '\Herstellerverzeichnis/Heizung/Fernwaerme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Alternativ Energie', '\Herstellerverzeichnis/Heizung/Alternativ Energie.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Klima', '', '', null, 'EbenelFont',Klima, Klima2);
Klima.addLink('Privat', '\Privat/Heizung/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic2);
Klima.addLink('Programme', '\Programme/Klima/Programme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Klima.addFolder('Herstellerverzeichnis2', 'Herstellerverzeichnis', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis2.addLink('Klima- Lüftung- Kälteanlagen', '\Herstellerverzeichnis/Klima/Klima- Lueftung- Kaelteanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Zentrahl- Raumlüftungsanlagen', '\Herstellerverzeichnis/Klima/Klima- Lueftung- Kaelteanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Truhen, Luftschleier, Lufterhitzer', '\Herstellerverzeichnis/Klima/Klima- Lueftung- Kaelteanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Einbaugeräte, Zubehör', '\Herstellerverzeichnis/Klima/Einbaugeraete, Zubehoer.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Staubsaugsysteme', '\Herstellerverzeichnis/Klima/Staubsaugsysteme.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Sanitär', '', '', null, 'EbenelFont',Sanitär, Sanitär2);
Sanitär.addLink('Privat', '\Privat/Heizung/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic2);
Sanitär.addLink('Programme', '\Programme/Sanitaer/Programme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Sanitär.addFolder('Herstellerverzeichnis3', 'Herstellerverzeichnis', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis3.addLink('Abwassertechnik', '\Herstellerverzeichnis/Sanitaer/Abwassertechnik.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Gas- Wassertechnik', '\Herstellerverzeichnis/Sanitaer/Gas- Wassertechnik.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Feuerlöscheinrichtung', '\Herstellerverzeichnis/Sanitaer/Feuerloescheinrichtung.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Objekte, Amarturen', '\Herstellerverzeichnis/Sanitaer/Objekte, Armaturen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Zubehör', '\Herstellerverzeichnis/Sanitaer/Objekte, Armaturen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Wärmedämmung und Rohrleitung', '\Herstellerverzeichnis/Sanitaer/Waermedaemmung und Rohrleitung.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Sonstiges', '', '', null, 'EbenelFont',Info, Info2);
Sonstiges.addLink('Privat', '\Bilder/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic1);
Sonstiges.addFolder('Programme', 'Programme', '', null, 'EbenelFont',Close, Open);
Programme.addLink('Feuerungstechnik', '\Programme/Sonstiges/Feuerungstechnik/Feuerung.htm', 'Hauptframe', 'EbenelFont', Ic1);
Sonstiges.addFolder('Herstellerverzeichnis4', 'Herstellerverzeichniss', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis4.addLink('Bauelemente, Baustoffe', '\Herstellerverzeichnis/Sonstiges/Bauelemente, Baustoffe.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Be- und Entwässerungsanlagen', '\Herstellerverzeichnis/Sonstiges/Be- und Entwaeserungs- Ver- und Entsorgungsanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Ver- und Entsorgungsanlagen', '\Herstellerverzeichnis/Sonstiges/Be- und Entwaeserungs- Ver- und Entsorgungsanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Brandschutzanlagen', '\Herstellerverzeichnis/Sonstiges/Brandschutzanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Kücheneinrichtung', '\Herstellerverzeichnis/Sonstiges/Keucheneinrichtung.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Labor- Lagertechnik', '\Herstellerverzeichnis/Sonstiges/Labor- Lagertechnik.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Rohrleitungszubehör', '\Herstellerverzeichnis/Sonstiges/Rohrleitungszubehoer.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Sondermedien', '\Herstellerverzeichnis/Sonstiges/Sondermedien.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Infoboard', '', '', null, 'EbenelFont',Infoboard, Infoboard2);
Infoboard.addFolder('STB', 'Staatliche Techniker Schule Berlin', '', null, 'EbenelFont', Close, Open);
STB.addLink('STB-Homepage', 'http://www.technikerschule-berlin.de/', 'Hauptframe', 'EbenelFont', Ic1);
STB.addLink('STB-HKS Homepage', 'http://www.stb-hks.de', 'Hauptframe', 'EbenelFont', Ic1);
Infoboard.addFolder('STB1', 'Studierende der STB-Berlin', '', null, 'EbenelFont', Close, Open);
STB1.addLink('Abschlusssemester 05/06', '\Semester06/semester.htm', 'Hauptframe', 'EbenelFont', Ic2);
STB1.addLink('Abschlussfeier 05/06', '\Semester06/Bilder.htm', 'Hauptframe', 'EbenelFont', Ic2);
FirstFolder.addLink('', 'http://www.Boardway.de/cgi-bin/forenserver/foren/F_1069/cutecast.pl', 'Hauptframe', 'EbenelFont',Forum, Forum2);
FirstFolder.addLink('', '\http://www.pc-computertechniker.de/tinc?key=HiS4z8dO&start=-1&reverse=1', 'Hauptframe', 'EbenelFont',Gast, Gast1);
FirstFolder.addLink('', '\Mail.htm', 'Hauptframe', 'EbenelFont',Kontakt, Kontakt2);
FirstFolder.build();
//-->
</script>
&</body>
</html>
ich habe ein Javascript von meinen Dozenten bekommen welches ich für meine Webseite www.hks-techniker.de umgeschrieben habe (links das Baumdiagram). Leider funktioniert es nur im IE-Explorer und nicht in Firefox.
Könnt ihr mir sagen wo der Fehler liegt? Danke im voraus
<html>
<head>
<title>Baummen&</title>
<script language="JavaScript1.2" type="text/javascript">
<!--
/*
Script: Baummenü
Version: 1.01
Datum: 31.05.2000
Autor: Andreas Zierhut
E-Mail: Andreas.Zierhut@gmx.de
Homepage: http://www.dhtml-now.de
Beschreibung: Erstellt ein Menü im Stil des Window-Explorers
Copyright (c) 2000 by Andreas Zierhut. Alle Rechte vorbehalten.
Das Script darf kostenlos weiterverwendet werden.
Der Kommentar darf nicht aus dem Script entfernt werden.
*/
/*
Update am 31.05.2000
~~~~~~~~~~~~~~~~~~~~
- Neuer Parameter: CloseSubfolders
bestimmt, ob eventuell geöffnete Unterordner geschlossen werden sollen
- Gestrichelter Rahmen erscheint im IE nicht mehr bei Klick auf einen Link / Ordner
- Für einen Ordner kann ein Link angegeben werden (nur sinnvoll in Frames)
- Die Links werden im NN nicht mehr überlagert, sondern erst wird der Platz reserviert
und anschließend werden die neuen Links angezeigt
*/
var ie = document.all ? true : false;
var ns = document.layers ? true : false;
var marked = false;
var itt = new Array();
var itc;
var allitc = 0;
function Folder(Ordner, Nr, Name, Text, URL, Target, ImgName, Font, Icon, ClickIcon)
{
this.Ordner = Ordner;
this.Nr = Nr;
this.Name = Name;
this.Text = Text;
this.URL = URL;
if (URL) {
if (Target)
this.Target = Target;
else
this.Target = BaseTarget;
}
else
this.Target = '';
this.ImgName = ImgName;
this.Font = Font;
this.Icon = Icon;
if (ClickIcon)
this.ClickIcon = ClickIcon;
else
this.ClickIcon = Icon;
this.isFolder = true;
this.Items = new Array();
this.addFolder = addFolder;
this.addLink = addLink;
this.getLink = getLink;
this.build = build;
this.IconSpace = 5;
this.MarginTop = 4;
this.MarginBottom = 4;
}
function addFolder(Unterordner, Text, URL, Target, Font, Icon, ClickIcon)
{
allitc++;
this.Items[this.Items.length] = new Folder(this.Name, this.Items.length, Unterordner, Text, URL, Target, 'ExplImg'+allitc, Font, Icon, ClickIcon);
window[Unterordner] = this.Items[this.Items.length-1];
window[Unterordner].ParentNr = this.Items.length-1;
window[Unterordner].ParentOrdner = this;
}
function Link(Text, URL, Target, ImgName, Font, Icon)
{
this.Text = Text;
this.URL = URL;
if (Target)
this.Target = Target;
else
this.Target = BaseTarget;
this.ImgName = ImgName;
this.Font = Font;
this.Icon = Icon;
this.getLink = getLink;
this.isFolder = false;
this.IconSpace = 5;
this.MarginTop = 4;
this.MarginBottom = 4;
}
function addLink(Text, URL, Target, Font, Icon)
{
allitc++;
this.Items[this.Items.length] = new Link(Text, URL, Target, 'ExplImg'+allitc, Font, Icon);
}
function getLink()
{
var A;
if (!this.isFolder)
A = '<a href="'+this.URL+'" target="'+this.Target+'" onFocus="this.blur()"';
else
A = '<a href="'+(this.URL ? this.URL : 'javascript:void(0)')+'"'+(this.Target ? ' target="'+this.Target+'"' : '')+' onClick="openFolder(\''+this.Ordner+'\', '+this.Nr+', \''+this.Name+'\');return false;" onFocus="this.blur()"';
return('<table border=0 cellspacing=0 cellpadding=0>' + (this.MarginTop ? '<tr><td>'+sp(1,this.MarginTop)+'</td></tr>' : '') +
'<tr><td nowrap>' + A + ' class="'+this.Font+'">'+this.Icon.getTag(this.ImgName)+sp(this.IconSpace,1)+this.Text+'</a></td></tr>' +
(this.MarginBottom ? '<tr><td>'+sp(1,this.MarginBottom)+'</td></tr>' : '') + '</table>');
}
function build()
{
var Style = '<style type="text/css">\n';
for (var i=0; i < Fonts.length; i++)
Style += '.' + Fonts.Name + ' { ' + Fonts.getStyle() + ' }\n';
Style += '</style>';
document.write(Style);
var its = FirstFolder.Items;
itc = 0;
for (var i=0; i < its.length; i++) {
var PosLeft = Left(itt[itc]);
var PosTop = Top(itt[itc])+Height(itt[itc]);
if (!i) {
PosLeft += StartX; PosTop += StartY;
if (marked) { PosLeft += Left('ExPos'); PosTop += Top('ExPos'); }
}
itc = free();
if (ns)
with(document.ids[itt[itc]]) { position = 'absolute'; left = PosLeft; top = PosTop; }
its.LName = itt[itc];
document.write('<div id="'+itt[itc]+'"' + (ie ? ' style="position: absolute; left: '+PosLeft+'; top: '+PosTop+'"' : '') + '>'+its.getLink()+'</div>');
}
}
var FolderTree = new Array();
function openFolder(Ordner, Nr, Unterordner)
{
var fol = window[Unterordner];
var FNr = offen(fol);
if (FNr != -1) {
if (ns)
document[fol.LName].document.images[0].src=fol.Icon.Picture.src;
else
document[fol.ImgName].src = fol.Icon.Picture.src;
var tmpo = FolderTree[FNr].ParentOrdner;
var tmpn = FolderTree[FNr].ParentNr;
schliessen(FNr);
arr.getLayers(tmpo, tmpn);
for (var i=1; i < arr.Layers.length; i++)
move(arr.Layers, null, RTop(arr.Layers[i-1]) + Height(arr.Layers[i-1]));
}
else {
if (ns)
document[fol.LName].document.images[0].src=fol.ClickIcon.Picture.src;
else
document[fol.ImgName].src = fol.ClickIcon.Picture.src;
if (CloseSubfolders)
for (var i=0; i<window[Ordner].Items.length; i++)
if (window[Ordner].Items.isFolder && offen(window[Ordner].Items) != -1)
openFolder(Ordner, i, window[Ordner].Items.Name, null);
FolderTree[FolderTree.length] = fol;
window[Unterordner].Nr = Nr;
var its = fol.Items;
var op = window[Ordner].Items[Nr].LName;
for (var i=0; i < its.length; i++) {
itc = free();
var Name = itt[itc];
make(Name);
hide(Name);
move(Name, Left(op)+Indent, RTop(!i ? op : its[i-1].LName) + Height(!i ? op : its[i-1].LName));
its.LName = Name;
its.it = itc;
write(Name, its.getLink());
}
arr.getLayers(window[Ordner], Nr);
for (var i=1; i < arr.Layers.length; i++)
move(arr.Layers, null, RTop(arr.Layers[i-1]) + Height(arr.Layers[i-1]));
for (var i=0; i < its.length; i++)
show(its.LName);
}
}
var arr = new MyArr();
function MyArr() { this.Layers = null; this.getLayers = getLayers; }
var start;
function getLayers(Ordner, Nr, NeuOrdner)
{
if (Nr != -1) { this.Layers = new Array(); start = false; } else Nr = 0;
if (!NeuOrdner) NeuOrdner = FirstFolder;
var akt = NeuOrdner.Items;
for (var i=0; i < akt.length; i++) {
if (i == Nr && Ordner == NeuOrdner && !start)
start = true;
if (start)
this.Layers[this.Layers.length] = akt.LName;
if (akt.Items && offen(akt) != -1)
this.getLayers(Ordner, -1, akt);
}
}
function schliessen(FNr)
{
var fol = FolderTree[FNr];
var its = fol.Items;
for (var i=0; i < its.length; i++) {
hide(its.LName);
itt[its.it] = null;
}
FolderTree[FNr] = FolderTree[FolderTree.length-1];
FolderTree = FolderTree.slice(0, -1);
for (var i=0; i < its.length; i++)
if (its.Items && offen(its) != -1)
schliessen(offen(its));
}
function offen(Ordner)
{
for (var i=0; i < FolderTree.length; i++)
if (FolderTree == Ordner)
return i;
return -1;
}
function free()
{
for (var i=0; i < itt.length; i++) {
if (!itt) {
itt = 'Link'+i;
return i;
}
}
itt[itt.length] = 'Link'+itt.length;
return itt.length-1;
}
function Icons(ieURL, nsURL, Breite, Hoehe)
{
this.Picture = new Image();
if (document.all || !nsURL)
this.Picture.src = ieURL;
else
this.Picture.src = nsURL;
this.Breite = Breite;
this.Hoehe = Hoehe;
this.getTag = getTag;
}
function getTag(Name)
{
return('
}
function Font(Name, fontColor, fontFamily, fontSize, fontWeight, fontStyle, textDecoration)
{
this.Name = Name;
this.fontColor = fontColor;
this.fontFamily = fontFamily;
this.fontSize = fontSize;
this.fontWeight = fontWeight;
this.textDecoration = textDecoration;
this.fontStyle = fontStyle;
this.getStyle = getStyle;
}
function getStyle()
{
return('color: '+this.fontColor+'; font-family: '+this.fontFamily+'; font-size: '+this.fontSize+'; font-weight: '+this.fontWeight+'; text-decoration: '+this.textDecoration+'; font-style: '+this.fontStyle+';');
}
function mark()
{
marked = true;
if (ie)
document.write('<span id="ExPos">'+sp(1,1)+'</span>');
else if (ns)
document.write('<ilayer name="ExPos">'+sp(1,1)+'</ilayer>');
}
function reserve(Hoehe)
{
if (ns)
document.write('<table border=0 cellspacing=0 cellpadding=0 height="'+Hoehe+'"><tr><td>'+sp(1,1)+'</td></tr></table>');
}
function Left(l)
{
if (ns && document[l])
return document[l].pageX;
else if (ie && document.all[l])
return absLeft(document.all[l]);
return 0;
}
function RTop(l){if(document.all) { if(document.all[l])return(document.all[l].style.posTop); } else return(Top(l)); return 0}
function Top(l)
{
if (ns && document[l])
return document[l].pageY;
else if (ie && document.all[l])
return absTop(document.all[l]);
return 0;
}
function Width(l)
{
if (ns && document[l])
return document[l].document.width;
else if (ie && document.all[l])
return document.all[l].offsetWidth;
return 0;
}
function Height(l)
{
if (ns && document[l])
return document[l].document.height;
else if (ie && document.all[l])
return document.all[l].offsetHeight;
return 0;
}
function absLeft(l)
{
if (l.offsetParent) return (l.offsetLeft + absLeft(l.offsetParent));
else return (l.offsetLeft);
}
function absTop(l)
{
if (l.offsetParent) return (l.offsetTop + absTop(l.offsetParent));
else return (l.offsetTop);
}
function sp(w,h)
{
if (ie) return('
else if (ns) return('<spacer type=block width='+w+' height='+h+'>');
return;
}
function make(l)
{
if (ns && !document[l])
document[l] = new Layer(1);
else if (ie && !document.all[l])
document.body.insertAdjacentHTML('AfterBegin', '<span id="'+l+'" style="position: absolute">&</span>');
}
function show(l)
{
if (ie) document.all[l].style.visibility = 'visible';
else if (ns) document[l].visibility = 'show';
}
function hide(l)
{
if (ie) document.all[l].style.visibility = 'hidden';
else if (ns) document[l].visibility = 'hide';
}
function move(l,x,y)
{
if (ie) { if(x) document.all[l].style.posLeft=x; if(y) document.all[l].style.posTop=y; }
else if (ns) { if(x) document[l].pageX=x; if(y) document[l].pageY=y; }
}
function write(l,i)
{
if (ie) document.all[l].innerHTML = i;
else if (ns) { with(document[l].document) { open(); write(i); close(); } }
}
//-->
</script>
<base target="Hauptframe">
<body bgcolor="#0099FF">
</head>
<body>
<script language="JavaScript1.2" type="text/javascript">
<!--
if (ie || ns) {
mark();
reserve(1000);
}
//-->
</script>
<script language="JavaScript1.2" type="text/javascript">
<!--
/* Einstellungen/Parameter */
//-------------------------------//
var Fonts = new Array();
Fonts[Fonts.length] = new Font('Ebene1Font', '#000060', 'Arial,Helvetica,Sans-Serif', '75%', '600', 'normal', 'none');
Fonts[Fonts.length] = new Font('Ebene2Font', '#000090', 'Arial,Helvetica,Sans-Serif', '75%', '600', 'normal', 'none');
Fonts[Fonts.length] = new Font('Ebene3Font', '#0000C0', 'Arial,Helvetica,Sans-Serif', '75%', '600', 'normal', 'none');
var StartX = 0;
var StartY = 0;
var BaseTarget = '_top';
var CloseSubfolders = true;
var Indent = 20;
var Startseite = new Icons('\Buttons/buttonB1.jpg', null, 130, 22);
var Startseite2 = new Icons('\Buttons/buttonC1.jpg', null, 130, 22);
var Heizung = new Icons('\Buttons/buttonE1.jpg', null, 130, 22);
var Heizung2 = new Icons('\Buttons/buttonF1.jpg', null, 130, 22);
var Klima = new Icons('\Buttons/button16.jpg', null, 130, 22);
var Klima2 = new Icons('\Buttons/button17.jpg', null, 130, 22);
var Sanitär = new Icons('\Buttons/button18.jpg', null, 130, 22);
var Sanitär2 = new Icons('\Buttons/button19.jpg', null, 130, 22);
var Info = new Icons('\Buttons/button20.jpg', null, 130, 22);
var Info2 = new Icons('\Buttons/button21.jpg', null, 130, 22);
var Forum = new Icons('\Buttons/button1D.jpg', null, 130, 22);
var Forum2 = new Icons('\Buttons/button1E.jpg', null, 130, 22);
var Gast = new Icons('\Buttons/Gaestebuch/button2A.jpg', null, 130, 22);
var Gast1 = new Icons('\Buttons/Gaestebuch/button2B.jpg', null, 130, 22);
var Kontakt = new Icons('\Buttons/button22.jpg', null, 130, 22);
var Kontakt2 = new Icons('\Buttons/button23.jpg', null, 130, 22);
var Infoboard = new Icons('\Buttons/button1A.jpg', null, 130, 22);
var Infoboard2 = new Icons('\Buttons/button1B.jpg', null, 130, 22);
var Bild = new Icons('\Bilder/Start.jpg', null, 130, 120);
var Ic1 = new Icons('\Bilder/folder_images.gif', null, 15, 15);
var Ic2 = new Icons('\Bilder/icon_padlock.gif', null, 15, 15);
var Open = new Icons('\Buttons/open.gif', null, 20, 20);
var Close = new Icons('\Buttons/close.gif', null, 20, 20);
var FirstFolder = new Folder(null,null,'FirstFolder');
FirstFolder.addFolder('', '', '', null, 'EbenelFont',Bild, null);
FirstFolder.addLink('', '\haupt.htm"', 'Hauptframe', 'EbenelFont',Startseite, Startseite2);
FirstFolder.addFolder('Heizung', '', '', null, 'EbenelFont',Heizung, Heizung2);
Heizung.addLink('Privat', '\Privat/Heizung/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic2);
Heizung.addLink('Programme', '\Programme/Heizung/Programme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Heizung.addFolder('Herstellerverzeichnis1', 'Herstellerverzeichnis', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis1.addLink('Kessel', '\Herstellerverzeichnis/Heizung/Kessel.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Heizkörper', '\Herstellerverzeichnis/Heizung/Heizkoerper.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Armarturen', '\Herstellerverzeichnis/Heizung/Armaturen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Rohre', '\Herstellerverzeichnis/Heizung/Rohre.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Fernwärme', '\Herstellerverzeichnis/Heizung/Fernwaerme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis1.addLink('Alternativ Energie', '\Herstellerverzeichnis/Heizung/Alternativ Energie.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Klima', '', '', null, 'EbenelFont',Klima, Klima2);
Klima.addLink('Privat', '\Privat/Heizung/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic2);
Klima.addLink('Programme', '\Programme/Klima/Programme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Klima.addFolder('Herstellerverzeichnis2', 'Herstellerverzeichnis', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis2.addLink('Klima- Lüftung- Kälteanlagen', '\Herstellerverzeichnis/Klima/Klima- Lueftung- Kaelteanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Zentrahl- Raumlüftungsanlagen', '\Herstellerverzeichnis/Klima/Klima- Lueftung- Kaelteanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Truhen, Luftschleier, Lufterhitzer', '\Herstellerverzeichnis/Klima/Klima- Lueftung- Kaelteanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Einbaugeräte, Zubehör', '\Herstellerverzeichnis/Klima/Einbaugeraete, Zubehoer.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis2.addLink('Staubsaugsysteme', '\Herstellerverzeichnis/Klima/Staubsaugsysteme.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Sanitär', '', '', null, 'EbenelFont',Sanitär, Sanitär2);
Sanitär.addLink('Privat', '\Privat/Heizung/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic2);
Sanitär.addLink('Programme', '\Programme/Sanitaer/Programme.htm', 'Hauptframe', 'EbenelFont', Ic1);
Sanitär.addFolder('Herstellerverzeichnis3', 'Herstellerverzeichnis', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis3.addLink('Abwassertechnik', '\Herstellerverzeichnis/Sanitaer/Abwassertechnik.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Gas- Wassertechnik', '\Herstellerverzeichnis/Sanitaer/Gas- Wassertechnik.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Feuerlöscheinrichtung', '\Herstellerverzeichnis/Sanitaer/Feuerloescheinrichtung.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Objekte, Amarturen', '\Herstellerverzeichnis/Sanitaer/Objekte, Armaturen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Zubehör', '\Herstellerverzeichnis/Sanitaer/Objekte, Armaturen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis3.addLink('Wärmedämmung und Rohrleitung', '\Herstellerverzeichnis/Sanitaer/Waermedaemmung und Rohrleitung.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Sonstiges', '', '', null, 'EbenelFont',Info, Info2);
Sonstiges.addLink('Privat', '\Bilder/under_construction.htm', 'Hauptframe', 'EbenelFont', Ic1);
Sonstiges.addFolder('Programme', 'Programme', '', null, 'EbenelFont',Close, Open);
Programme.addLink('Feuerungstechnik', '\Programme/Sonstiges/Feuerungstechnik/Feuerung.htm', 'Hauptframe', 'EbenelFont', Ic1);
Sonstiges.addFolder('Herstellerverzeichnis4', 'Herstellerverzeichniss', '', null, 'EbenelFont',Close, Open);
Herstellerverzeichnis4.addLink('Bauelemente, Baustoffe', '\Herstellerverzeichnis/Sonstiges/Bauelemente, Baustoffe.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Be- und Entwässerungsanlagen', '\Herstellerverzeichnis/Sonstiges/Be- und Entwaeserungs- Ver- und Entsorgungsanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Ver- und Entsorgungsanlagen', '\Herstellerverzeichnis/Sonstiges/Be- und Entwaeserungs- Ver- und Entsorgungsanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Brandschutzanlagen', '\Herstellerverzeichnis/Sonstiges/Brandschutzanlagen.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Kücheneinrichtung', '\Herstellerverzeichnis/Sonstiges/Keucheneinrichtung.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Labor- Lagertechnik', '\Herstellerverzeichnis/Sonstiges/Labor- Lagertechnik.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Rohrleitungszubehör', '\Herstellerverzeichnis/Sonstiges/Rohrleitungszubehoer.htm', 'Hauptframe', 'EbenelFont', Ic1);
Herstellerverzeichnis4.addLink('Sondermedien', '\Herstellerverzeichnis/Sonstiges/Sondermedien.htm', 'Hauptframe', 'EbenelFont', Ic1);
FirstFolder.addFolder('Infoboard', '', '', null, 'EbenelFont',Infoboard, Infoboard2);
Infoboard.addFolder('STB', 'Staatliche Techniker Schule Berlin', '', null, 'EbenelFont', Close, Open);
STB.addLink('STB-Homepage', 'http://www.technikerschule-berlin.de/', 'Hauptframe', 'EbenelFont', Ic1);
STB.addLink('STB-HKS Homepage', 'http://www.stb-hks.de', 'Hauptframe', 'EbenelFont', Ic1);
Infoboard.addFolder('STB1', 'Studierende der STB-Berlin', '', null, 'EbenelFont', Close, Open);
STB1.addLink('Abschlusssemester 05/06', '\Semester06/semester.htm', 'Hauptframe', 'EbenelFont', Ic2);
STB1.addLink('Abschlussfeier 05/06', '\Semester06/Bilder.htm', 'Hauptframe', 'EbenelFont', Ic2);
FirstFolder.addLink('', 'http://www.Boardway.de/cgi-bin/forenserver/foren/F_1069/cutecast.pl', 'Hauptframe', 'EbenelFont',Forum, Forum2);
FirstFolder.addLink('', '\http://www.pc-computertechniker.de/tinc?key=HiS4z8dO&start=-1&reverse=1', 'Hauptframe', 'EbenelFont',Gast, Gast1);
FirstFolder.addLink('', '\Mail.htm', 'Hauptframe', 'EbenelFont',Kontakt, Kontakt2);
FirstFolder.build();
//-->
</script>
&</body>
</html>