• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

problem mit element.style.color

alogheo

Mitglied
ich habe folgenden javascript-code in einem onclick-attribut eines buttons:

Code:
document.getElementById("id_1").style.color="black";

Allerdings ändert sich die farbe des textes nicht

kann mir jemand weiterhelfen?

Danke schonmal im vorraus

alogheo
 
Werbung:
brauchts da nicht noch ein # beim abrufen der id?

ah ne habs raus machs mal so
HTML:
<head>

<title>change color on a tag by click</title>
<script language="javascript">
function change(){
document.getElementById('id_1').style.color="#000"
}
</script>
</head>

<body>
<a href="#" id="id_1" onclick="change()">click me</a>
</body>

LG
 
Zuletzt bearbeitet:
Werbung:
habs gemerkt allerdings trenne ich das JavaScript immer vom Html und machs wie oben und nicht darin einbette was er wahrscheinlich gemacht hat.
 
Oh bitte nicht, das language Attribut ist seit 1998 unerwünscht und sollte nicht mehr verwendet werden.
 
Werbung:
das ist das wichtigste aus dem Quellcode:

Code:
<html>
<head>
<style>
#id_1
{
background-color: #ccc;
border: #008 double 4px;
width: 100%;
}
</style>
</head>
<body>
<h1>Überschrift</h1>
<hr>
<br /><br /><br />
<table id="id_1">
<tr>
<td style="color: #999;">td 1</td>
<td style="color: #f00;">td 2</td>
</tr>
</table>
<br />
<button onclick="document.getElementById("id_1").style.color='black';">Schriftfarbe ändern</button>
</body>

ich hoffe es ist nicht zu wenig
 
Zuletzt bearbeitet:
Du versuchst bei einem <table>-Element die Farbe zu sehen. Das kannst Du durchaus machen. Nur wirkt sich das eben nicht auf die darinliegenden Elemente, insbesondere nicht auf <td> aus, wenn diese eine eigene Style-Angabe für die Schriftfarbe haben.

Welche Schriftfarbe willst Du also genau ändern? Die in einer der Tabellenzellen? Oder in beiden?
 
Werbung:
ich will die farbe in beiden zellen ändern


also muss ich für die einzelnen zellen die Farbe ändern oder wa?
 
Zuletzt bearbeitet:
Ja, musst Du. Wobei Du auch dafür viele Möglichkeiten hast.

Du kannst entweder dein jetziges Script so erweitern, dass die einzelnen Zellen eindeutige IDs haben und bei diesen änderst Du die Farbe wie gewünscht

ODER

Du gibst der Tabelle wie auch den einzelnen Zellen jeweils eigene CSS-Klassen die einzig die Schriftfarben festlegen und wechselst per JavaScript die zu verwendente Klasse.

HTML
HTML:
<table id="meineid" class="colorstandard">
 <tr>
  <td class="erste">bla</td>
  <td class="zweite">blubb</td>
 </tr>
</table>

CSS
Code:
.colorstandard .erste { color: red; }
.colorstandard .zweite { color: blue; }
.colors2 .erste { color: red; }
.colors2 .zweite { color: blue; }

JavaScript
Code:
document.getElementById("Tabelle").className = "colors2";

So könntest Du unabhängig von deinem JavaScript jederzeit wieder an der Farbe etwas ändern ohne ins JavaScript reingucken zu müssen.
 
Werbung:
Zurück
Oben