Christian: Netscape-spez. Funktion?

Beitrag lesen

Hi,

ich hab mal ein kleines problemschen und zwar müsste ich wissen ob es für Netscape eine Funktion gibt, die mir das aktuelle aktive HTML-Element zurück gibt.. (wie beim MSIE die Funktion "event.srcElement")

im MSIE ist es document.activeElement
event.srcElement steht nur bei Events zur Verfügung.
Nach DOM ist es
e.currentTarget oder
e.target
wobei e das event-objekt ist, das der Funktion implizit übergeben wurde.
musste mal ausprobieren

ich machs immer so:

function beispiel(ev)
{
   var e = (ev) ? ev : event;
   alert(this.tagName); // z.B. "A"
}

das aktuelle Objekt (das diese Funktion aufruft) kannst du auch einfach mit "this" ansprechen. dann brauchst du auch keine Fallunterscheidung, und auch kein srcElement.

dann haste in e sowohl das MSIE-Event-Objekt als auch das DOM event objekt.

[script]
for(j=0; j < document.getElementsByTagName("a").length; j++) {
 link = document.getElementsByTagName("a");
 link[j].onmouseover = fadeIn_ns;
 link[j].onmouseout = fadeOut_ns;
}
[/script]

nimm vielleicht lieber document.links, das findet nur die <a> mit href=""
(das soll wohl hier gemeint sein) und läuft dann auch unter NS 4.

eine Variable kannst du zwar nicht übergeben, aber du kannst sie als eigenschaft ans Objekt hängen. so mach ich das immer.

machs so:

for(j=0; j < document.links.length; j++) {
  document.links[j].meineEigenschaft = "Parameter";
  document.links[j].onmouseover = fadeIn_ns;
  document.links[j].onmouseout = fadeOut_ns;
}

function fadeIn_ns(e)
{
  var e = (ev) ? ev : event;
  alert(this.meineEigenschaft); // --> "Parameter"
  // ...
}

Gruß
Christian