![]() |
[JS] Parent-Tag finden
Hallo allerseits.
In einem Event hole ich mir so das Tag das das Event aufgerufen hat:
Code:
Kann ich nun irgendwie herausfinden, welches Tag der Parent ist, d.h. "span" oder "td" usw.?
thisTag = event.srcElement;
Thanx and Greetz alcaeus |
Re: [JS] Parent-Tag finden
Gab´s nicht so was wie "tagName" oder nur "name"?
|
Re: [JS] Parent-Tag finden
Hallo Mathias,
ja, allerdings erhalte ich z.B. mit
Code:
den Namen des aktuellen Tags, und nicht jener des Tags das ihn umgibt.
thisTag.tagName
Vielleicht nochmal eine bessere Erklärung. Ich habe ein globales onMouseOver-Event. In diesem prüfe ich zuerst, ob tagName "a" ist, ich mich also über einem Link befinde. Nun will ich aber noch festlegen, dass wenn der Parent des Links einer bestimmten Klasse ist, dann nichts passiert, also wie z.B.
Code:
Allerdings hat das mit Parent bei mir nicht funktioniert.
thisTag.parent.<eineMethode>
Greetz alcaeus |
Re: [JS] Parent-Tag finden
Sprechen wir hier eigentlich von DOM? Oder versuchst du es mit "normalem" JavaScript? Im Fall von DOM müsste ich zwar erst nachgucken (ich habe schon ´ne Weile nix mehr mit JS gemacht), aber mir ist als könnte man da relativ bequem die Parents und Children von Objekten ermitteln. :gruebel:
|
Re: [JS] Parent-Tag finden
Hallo Mathias,
ich kenne jetzt nicht den genauen Unterschied zw. DOM und JS (:oops:), aber wenn ich mich richtig erinnere, dann ist DOM von M$, und daher wohl IE-spezifisch. Da ich allerdings gerne eine möglichst allgemeingültige Lösung hätte, muss ich wohl erstmal JS sagen. Greetz alcaeus |
Re: [JS] Parent-Tag finden
Äh, DOM (Document Object Model) ist eigentlich sehr allgemein. Es halten sich nur nicht unbedingt die Browser dran. :) Okay, bei meinen bisherigen Projekten haben Mozilla und IE6 keine Probleme gemacht. Opera habe ich nicht mehr im Test.
|
Re: [JS] Parent-Tag finden
Gerade getestet in IE6 und Mozilla 1.7.x
Code:
Opera? Keine Ahnung ... :)
<html>
<head> <title>DOM-Test</title> <style type="text/css"><!-- i.TestKlasse { text-decoration:underline; background-color:transparent; color:red; } --></style> </head> <body> Hallo, <b id="fett">[i]Welt[/i][/b]!</p> <script type="text/javascript"><!-- // [b] anhand der ID finden var b = document.getElementById("fett"); // Parent von [b] ermitteln und Typnamen anzeigen var p = b.parentNode; alert(p.nodeName); // erstes "Kind" von [b] ermitteln, ... var i = b.firstChild; // ... & Typnamen anzeigen, ... alert(i.nodeName); // ... & Klasse ändern var ClassName = (navigator.userAgent.indexOf("MSIE") == -1)?"class":"className"; i.setAttribute(ClassName,"TestKlasse"); --></script> </body> </html> |
Re: [JS] Parent-Tag finden
Hallo Mathias,
erstmal danke, ich werde das mit parentNode auf der Heimfahrt testen :coder: Noch eine Frage zu dem hier:
Code:
Heißt das, dass ich immer zwischen IE und nicht-IE unterscheiden muss um die Klasse rauszufinden?
var ClassName = (navigator.userAgent.indexOf("MSIE") == -1)?"class":"className";
Greetz alcaeus |
Re: [JS] Parent-Tag finden
Im Normalfall musst du bei DOM eben nicht mehr unterscheiden. Das ist ja der Vorteil. Wenn sich die Browser daran halten, dann kannst du Skripte schreiben, die in IE und Mozilla funktionieren. Und sicher auch im Opera.
Es gibt ein paar kleine Unterschiede. Leider. Und einer davon ist die Klasse. Da würde ich dir mal die Lektüre vom W3C ans Herz legen. Aber auch ins PSDK solltest du wg. evtl. Unterschieden gucken. :) |
Re: [JS] Parent-Tag finden
Ok, danke, dann werd ich das heute abend zu Hause auch auf Opera testen.
Thanx and Greetz alcaeus |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz