EKKi: Untertschied getElementsbyID und getElementsbyTag

Beitrag lesen

Mahlzeit Tom.Bombadil,

wenn ich versuche ein HTML-Objekt (in meinem Fall ein <iframe>) anzusprechen, dann habe ich dzu ja mehrere Möglichkeiten.

  1. window.frames["meinIFRAME"]
  2. document.all.getElementsById("meinIFRAMEID")

Falsch: http://de.selfhtml.org/javascript/objekte/document.htm#get_element_by_id@title=document.getElementById() - ohne "all" und ohne "s"

  1. document.all.getElementsByTag("meinIFRAMEID")

Falsch: http://de.selfhtml.org/javascript/objekte/document.htm#get_elements_by_name@title=document.getElementsByName() - ohne "all"

Sind die Zugriffe irgendwie beabsichtigt so unterschiedlich, oder ist das nur so eine Version-veralteterKRAM-Browserkrieg-Microsoft-Geschichte?

Ja, nein.

Warum gibt es diese verschiedenen Möglichkeiten?

Weil sie unterschiedliche Ergebnisse zurückliefern: getElementById() liefert GENAU EIN Element zurück - dasjenige mit der ID, die Du als Parameter angibst. Da eine ID dokumentweit eindeutig sein muss, kann es maximal ein Element mit dieser ID geben - und das bekommst Du zurück. getElementsByName hingegen liefert ein Array mit allen Elementen, die den von Dir als Parameter übergebenen Namen besitzen, zurück. Ein Name muss nicht eindeutig sein, also können auch mehrere Elemente mit dem gleichen Namen existieren.

MfG,
EKKi

--
sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|