molily: aktuelles DIV ansprechen in dem Javascript geschrieben steht?

Beitrag lesen

In diesem DIV steht JavaScript und ich möchte gerne auf das DIV zugreifen.

Ein Script hat Zugriff auf das DOM, welches vor dem script-Element liegt. Siehe Ausführung von script-Elementen. In dem Moment, wo es ausgeführt wird, ist das script-Element bereits im DOM. Danach kommt nichts mehr im DOM, weil die JavaScript-Ausführung den HTML-Parser blockt (Hintergrundinfos).

Ergo: Ein Script weiß genau, wo es im DOM liegt. Man kann sich alle Elemente im DOM holen bzw. in deinem Fall reichen alle div-Elemente. Es ist garantiert, dass das letzte Element im Dokument das script-Element ist, dessen Code gerade ausgeführt wird. Das VORletzte Element im DOM ist also dessen vorheriges Geschwisterelement (sofern vorhanden) oder dessen Elternelement.

<div id="foo">  
   <div id="bar">  
      <script>  
[code lang=javascript]         (function () {  
            var all = document.getElementsByTagName("*");  
            var div = all[all.length - 2];  
            alert(div + ' ' + div.id);  
         })();

</script>
   </div>
</div>[/code]

oder halt

<div id="foo">  
   <div id="bar">  
      <script>  
[code lang=javascript]         (function () {  
            var divs = document.getElementsByTagName("div");  
            var div = divs[divs.length - 1];  
            alert(div + ' ' + div.id);  
         })();

</script>
   </div>
</div>[/code]

Für empfehlenswert, weil sicherer und sprechender, halte ich allerdings den von ichbinich aufgezeigten Weg.

Mathias