Lieber Matthias Scharwies,
das Wort "class" ist in JavaScript ein reserviertes Wort, daher kann man nicht einfach <ElementOjekt>.class="string" notieren, sondern muss "className" als Eigenschaft verwenden:
<ElementOjekt>.className = "string";
function ColorTA()
{
var markiert = document.getElementsByClassName('con');
alert(markiert);
markiert.setAttribute("style","background:#66FF00;");
markiert.setAttribute("class","marked");
}
In Deiner Variablen "markiert" steht - [wenn der Browser die Methode getElementsByClassName unterstützt](http://caniuse.com/#search=getElementsByClassName) - keine Referenz auf ein Elementobjekt, sondern auf eine Liste (sogenannte "live node list") von solchen, die sich wie ein Array ansprechen lässt. Das lässt auch schon der Plural in getElement\_s\_ByClassName vermuten.
Du brauchst also eine Schleife, um über die gefundenen Elemente zu iterieren:
~~~javascript
function ColorTA() {
var markiert = document.getElementsByClassName('con');
var i;
for (i = 0; i < markiert.length; i++) {
markiert[i].className = "marked";
markiert[i].style = "background:#66FF00;";
}
}
Liebe Grüße,
Felix Riesterer.
--
ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)
ie:% br:> fl:| va:) ls:[ fo:) rl:| n4:? de:> ss:| ch:? js:) mo:} zu:)