Forum Doku Wiki Blog

Forumsarchiv 2002, Juli
Probleme mit ID-Tag

archivierte Beiträge lesen

  1. (DHTML) Probleme mit ID-Tag von Torsten Puschmann, 01. 07. 2002, 15:52

Probleme mit ID-Tag

Der folgende Beitrag wurde am 01. 07. 2002, 15:52 Uhr von Torsten Puschmann veröffentlicht.

Wie kann ich im Beispiel-Code am Ende dieser Nachricht die Wertezuweisung in der changetab-Funktion durch eine Schleife realisieren?
Welche Möglichkeit gibt es, den id-Ausdruck im document.all.id-Ausdruck hineinzukonstruieren? Z.B. document.all.("sub"+id).style.backgroundColor. Dies ist natürlich falsch, aber wie geht dies nur?

<html><head><title>Test</title>
<STYLE type=text/css>
BODY {FONT-SIZE: 11px; MARGIN: 0px 0px 2px 0px; COLOR: #000000; FONT-FAMILY: tahoma,sans-serif; BACKGROUND-COLOR: #C8EAFF}
TABLE {BORDER-RIGHT: 0px; BORDER-TOP: 0px; FONT-SIZE: 11px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px; FONT-FAMILY: tahoma,sans-serif}
A {FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #000066; FONT-FAMILY: tahoma,sans-serif; TEXT-DECORATION: none}
A:link {COLOR: #0202B0}
A:visited {COLOR: #000090}
A:hover {COLOR: #FF00FF}
</STYLE>




<script language="JavaScript">
<!--
function changetab(id)
{
 document.all.sub1.style.backgroundColor = (id==1)?"#daeaf6":"93bee2";
 document.all.sub2.style.backgroundColor = (id==2)?"#daeaf6":"93bee2";
 document.all.sub3.style.backgroundColor = (id==3)?"#daeaf6":"93bee2";
 document.all.sub4.style.backgroundColor = (id==4)?"#daeaf6":"93bee2";
 document.all.sub5.style.backgroundColor = (id==5)?"#daeaf6":"93bee2";
}
//-->
</script>
</head>
<body>
<table>
<tr style='HEIGHT: 19px' bgColor=#93bee2 border=0>
<td>
<a id="sub1" href="javascript:" onclick="changetab(1)">    test1    </a>
<a id="sub2" href="javascript:" onclick="changetab(2)">    test2    </a>
<a id="sub3" href="javascript:" onclick="changetab(3)">    test3    </a>
<a id="sub4" href="javascript:" onclick="changetab(4)">    test4    </a>
<a id="sub5" href="javascript:" onclick="changetab(5)">    test5    </a>
</td>
</tr>
</table>
</body></html>

Probleme mit ID-Tag

Der folgende Beitrag wurde am 01. 07. 2002, 16:02 Uhr von hartmann veröffentlicht.

hi,

ich hab's nicht getestet aber

for( i=1; i<6; i++ )
{
document.all["sub"+i].style.backgroundColor = irgendeinwert;
}

sollte funktionieren.

gruss
hartmann

Probleme mit ID-Tag

Der folgende Beitrag wurde am 02. 07. 2002, 07:47 Uhr von Puschi veröffentlicht.

Es funktioniert!
Den Nagel auf den Kopf getroffen. Da haette ich ja noch lange probieren koennen.
Mit dem Ausdruck document.GetElementById(objekt).style... hab ich noch keine Erfahrung, werd es aber mal ausprobieren. Auf die Schnelle kam ich hiermit allerdings nicht zum Ziel.

Vielen Dank fuer die rasche Hilfe.
Super-Forum, auch wenn etwas chaotisch und unübersichtlich. Für den Umfang fehlt mir einfach die Zeit.

Gruß Puschi

Probleme mit ID-Tag

Der folgende Beitrag wurde am 02. 07. 2002, 13:16 Uhr von Kai Lahmann veröffentlicht.

hi

> Mit dem Ausdruck document.GetElementById(objekt).style... hab ich noch keine Erfahrung, werd es aber mal ausprobieren. Auf die Schnelle kam ich hiermit allerdings nicht zum Ziel.

das, was da übergeben wird muss ein String sein, also im Arfruf "bla" (mit den " drumherum ;)

Grüße aus Bleckede

Kai

Probleme mit ID-Tag

Der folgende Beitrag wurde am 03. 07. 2002, 09:38 Uhr von Puschi veröffentlicht.

Habs natürlich hinbekommen (siehe http://www.geocities.com/puschmanns)!
Aber gibt es noch eine Möglichkeit herauszufinden, wieviele id's mit Namen "namexxx" vergeben wurden, um sich nicht immer alle "Untermenülängen merken zu müssen? Klar, könnte man über Arrays machen, bringt aber Köpfchen zum Qualmen.
Außerdem habe ich noch Probleme, daß erst die Bilder vorgeladen werden müssen, bevor daß Menü aufgebaut wird. Manchmal fehlen einige Tab-Bilder obwohl sie schon im Cash stehen (einige werden angezeigt, andere, obwohl gleich, nicht?!).

Danke und warte noch auf Tips zu DHTML-<BODY>-Change

Bye

Puschi

Probleme mit ID-Tag

Der folgende Beitrag wurde am 03. 07. 2002, 12:59 Uhr von Kai Lahmann veröffentlicht.

hi

> Aber gibt es noch eine Möglichkeit herauszufinden, wieviele id's mit Namen "namexxx" vergeben wurden, um sich nicht immer alle "Untermenülängen merken zu müssen?

jede einmal - oder wie jetzt?!

Grüße aus Bleckede

Kai

Probleme mit ID-Tag

Der folgende Beitrag wurde am 04. 07. 2002, 07:37 Uhr von Puschi veröffentlicht.

Ne, ne! Möchte mein Menü durch externe Datei automatisch aufbauen lassen. Dabei weiß ich nicht, wieviele Untermenüpunkte jeder Menüpunkt hat. Um aktiven Untermenüpunkt zu markieren, setze ich alle anderen Untermenüpunkte zurück (auf inaktive Farbe). Allerdings ist die Anzahl nun mal unterschiedlich (Untermenüpunkte).
Kreiert habe ich alle Untermenüpunkte nach Schema:
id="subtab01-1"    Menüpunkt 01 - Untermenüpunkt 1
id="subtab01-2"    Menüpunkt 01 - Untermenüpunkt 2
id="subtab01-3"    Menüpunkt 01 - Untermenüpunkt 3
id="subtab01-4"    Menüpunkt 01 - Untermenüpunkt 4
id="subtab02-1"    Menüpunkt 02 - Untermenüpunkt 1
id="subtab02-2"    Menüpunkt 02 - Untermenüpunkt 2
id="subtab03-1"    Menüpunkt 01 - Untermenüpunkt 1
usw.
So muß ich im Menü 1 3*rücksetzen und 1*setzen
im Menü 2 1*rücksetzen und 1*setzen
im Menü 3 nur einmal setzen

Zur Zeit lasse ich in allen Menüpunkten alle Untermenüpunkte 3*rücksetzen und 1*setzen.
So z.B. auch subtab03-4, obwohl es diesen gar net gibt. Schlimm?

Bei meiner Website sind dies allerdings noch mehr Menüpunkte und sicher werden es auch noch mehr!

Übrigens schade daß ich nicht Forum nicht nach Thema sortieren kann, oder geht dies?

Tschüß
Puschi

Siehe my website (Sorry, bin natürlich noch beim basteln).

Probleme mit ID-Tag

Der folgende Beitrag wurde am 01. 07. 2002, 16:03 Uhr von Joachim veröffentlicht.

hi,

bitte reduziere Deinen Code auf das Wesentliche. Merke: "document.all" ist veraltet und IE proprietaer.
Verwende sowas, um Div-Layer-Referenzierungen zu generalisieren:

// some known objects
var nc  =  !!(document.captureEvents && !document.getElementById);
var ie4 =  !!(document.all           && !document.documentElement);
// einfache div-layer referenzieren
function dRef(num)  {return (nc? document.layers[num] : (ie4? document.all[num] : document.getElementById(num)))}
function dRefS(num) {return (nc? document.layers[num] : (ie4? document.all[num].style : document.getElementById(num).style))}
</script>

mit dRef("myId") kannst Du nun Layer referenzieren, mit dRefS("myId").irgendwas auf style-Eigenschaften zugreifen.

Ich rate Dir weiterhin _dringend_, in der hiesigen Doku zu stoebern.

Gruesse  Joachim

Probleme mit ID-Tag

Der folgende Beitrag wurde am 01. 07. 2002, 17:19 Uhr von Kai Lahmann veröffentlicht.

> Wie kann ich im Beispiel-Code am Ende dieser Nachricht die Wertezuweisung in der changetab-Funktion durch eine Schleife realisieren?
> Welche Möglichkeit gibt es, den id-Ausdruck im document.all.id-Ausdruck hineinzukonstruieren? Z.B. document.all.("sub"+id).style.backgroundColor. Dies ist natürlich falsch, aber wie geht dies nur?

am Besten gar nicht. document.GetElementById(objekt).style... nimmt da jeden beliebigen String auf - einfacher geht's wohl nimma...

document.all sollte _ausschließlich_ für Seiten, wo der MSIE 4.x noch eine Rolle spielt verwendet werden, alles anderen Browser verstehen das da oben besser.

Grüße aus Bleckede

© 1998-2013 SELFHTMLImpressumSoftware: Classic Forum 3.4