Robbe: Unterstützung für DOM Level ermitteln

Hallo,

Ich dachte eigentlich das der IE6 und Opera 9.21 DOM Level 2 unterstützen, doch folgendes Beispiel beweist anscheinend das Gegenteil:

<select name="list" id="list" multiple>
   <option name="A" value="12">text A</option>
   <option name="B" value="14">text B</option>
   <option name="C" value="22">text C</option>
</select>

<script type="text/javascript">
   optionlist = document.getElementById("list").options;
   alert(optionlist.namedItem('B'));
</script>

Es wird NULL zurückgeliefert die Funktion namedItem exisitiert zwar hat aber keinen Rückgabewert. Im neusten Firefox funktioniert das einwandfrei.

Deswegen meine Frage gibt es eine Möglichkeit oder ein Archiv / Tabelle (am besten eigentlich programmintern), wo ich sowas herrausfinden kann? ich hab nix gefunden :(

gruss,
Robin.

  1. Hi,

    Ich dachte eigentlich das der IE6 und Opera 9.21 DOM Level 2 unterstützen, doch folgendes Beispiel beweist anscheinend das Gegenteil:

    es passiert selten bis nie, dass ein Standard von einem Programm vollständig unterstützt wird. Rechne _immer_ mit Lücken.

    Deswegen meine Frage gibt es eine Möglichkeit oder ein Archiv / Tabelle (am besten eigentlich programmintern), wo ich sowas herrausfinden kann? ich hab nix gefunden :(

    http://www.webdevout.net/browser-support wäre ein Ansatz.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
  2. Hallo,

    Ich dachte eigentlich das der IE6 und Opera 9.21 DOM Level 2 unterstützen, doch folgendes Beispiel beweist anscheinend das Gegenteil:

    Der Schein trügt hier.

    <select name="list" id="list" multiple>
       <option name="A" value="12">text A</option>
       <option name="B" value="14">text B</option>
       <option name="C" value="22">text C</option>
    </select>

    <script type="text/javascript">
       optionlist = document.getElementById("list").options;
       alert(optionlist.namedItem('B'));
    </script>

    Es wird NULL zurückgeliefert die Funktion namedItem exisitiert zwar hat aber keinen Rückgabewert. Im neusten Firefox funktioniert das einwandfrei.

    Dann schlampt der Firefox hier.

    Zitat aus http://www.w3.org/TR/2003/REC-DOM-Level-2-HTML-20030109/html.html#HTMLOptionsCollection-namedItem:
    namedItem
    This method retrieves a Node using a name. It first searches for a Node with a matching id attribute. If it doesn't find one, it then searches for a Node with a matching name attribute, _but only on those elements that are allowed a name attribute_.

    Nach welcher HTML DTD darf das OPTION-Element ein Attribut "name" haben?

    <select name="list" id="list" multiple>

    <option id="A" value="12">text A</option>
        <option id="B" value="14">text B</option>
        <option id="C" value="22">text C</option>

    </select>

    <script type="text/javascript">
       optionlist = document.getElementById("list").options;
       alert(optionlist.namedItem('B'));
    </script>

    So funktioniert es auch im IE6.

    viele Grüße

    Axel

    1. This method retrieves a Node using a name. It first searches for a Node with a matching id attribute. If it doesn't find one, it then searches for a Node with a matching name attribute, _but only on those elements that are allowed a name attribute_.

      ok, das ist ja ne ganz klar aussage.

      Dann schlampt der Firefox hier.

      jo, eindeutig.

      Nach welcher HTML DTD darf das OPTION-Element ein Attribut "name" haben?

      wohl nach keiner wie ich grad nachtgeschaut habe :P

      Vielen Dank für die kompetente Antwort :)

      LG,
      Robbe