Kai345: horizontales Balkendiagramm erstellen

Beitrag lesen

[latex]Mae  govannen![/latex]

var bargraph =

[ { range: 5000, elem: document.getElementById("activity").getElementByClassName("bar")[0] },
   { range:  100, elem: document.getElementById("activity").getElementByClassName("bar")[1] },
   { range: 2000, elem: document.getElementById("cost").getElementByClassName("bar")[0] },
   { range:  200, elem: document.getElementById("cost").getElementByClassName("bar")[1] }
];


>  
  
Warum wiederholt die Referenzen und deren Kinder ermitteln?  
  
Außerdem wurde leider document.[getElementsByClassName()](http://caniuse.com/#search=getElementsByClassName) erst so spät browserübergreifend implementiert, daß man oft mit [querySelectorAll](http://caniuse.com/#search=querySelectorAll) genauso oder einfacher arbeiten kann. Im Falle von IE8 ist QSA sogar (für CSS2.1 Selektoren) die bessere Wahl, da gEBCN erst ab IE9 implementiert ist (zumindest laut caniuse; da ich gerade erst XP neu installiere(n muß), habe ich zur Zeit leider noch IE6 und kann es nicht selber testen)  
  
~~~javascript
var el_acti = document.querySelectorAll("#activity .bar"),  
    el_cost = document.querySelectorAll("#cost .bar"),  
    bargraph = [  
        { range: 5000, elem: el_acti[0]},  
        { range:  100, elem: el_acti[1]},  
        { range: 2000, elem: el_cost[0]},  
        { range:  200, elem: el_cost[1]}  
    ];

function UpdateBar(n, val)

{ if (n<0 || n>bargraph.length) // bezeichnet n eine gültige Balken-Definition?
      return;                    // nein, dann ignorieren

  
Ach, du machst das auch so? Ich finde in Funktionen eine einfache "negative" Abfrage mit return auch schöner als tief verschachtelet "positive" Abfragen.  
  
  
♫ FIIIIISCH!! ♪  
  
Ric... äh Kai  

-- 
`var jQuery = $(hit);`{:.language-javascript}  
„Die Borg würden nicht mal Spaß verstehen, wenn sie einen Vergnügungspark assimiliert hätten!” (B'Elanna Torres)  
  
[SelfHTML-Forum-Stylesheet](http://selfhtml.knrs.de/#h_stylesheet)