Farben bei Anklicken verändern
Peter
- javascript
Hallo zusammen,
ich habe eine Herausforderung: für Präsentationszwecke würde ich gerne einen Text (bold) bei Anklicken oder MouseOver permanent mit einer anderen Hintergrundfarbe versehen (highlighten) und zwar ohne die Verwendung von document.getElementById, da das HTML-File generisch aus Mindmanager erstellt wurde.
Beispiel:
Das ist ein <b>fetter text</b>.
Das ist ein <b>zweiter fetter</b>text.
Beim Anklicken von "fetter text" wird z.B. gelb hinterlegt, beim Anklicken von "zweiter fetter" wird auch gelb hinterlegt, "fetter text" bleibt gelb.
Wer kenn mit mit einem JS weiterhelfen, wenn es keine ElementId im <b>-Tag gibt? Kenne das Beispiel in SELFHTML, dort wird aber document.getElementById verwendet.
Gruss
Peter
---------------------
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><title>Test</title>
<style type="text/css">
<!--
.normal { font-size:20pt; color:blue; }
.extra { font-size:20pt; color:red; background-color:yellow; }
-->
</style>
<script type="text/javascript">
<!--
function wechseln() {
if(document.getElementById("stark").className == "normal")
document.getElementById("stark").className = "extra";
else
document.getElementById("stark").className = "normal";
}
//-->
</script>
</head><body>
<p><strong id="stark" class="normal" onMouseOver="wechseln()" onMouseOut="wechseln()">ganz stark!</strong></p>
</body></html>
Hallo
was willst du denn nun? onMouseOver/OnMouseOut oder onClick?
belassen wir es wie im Bsp beo de MouseOver, ansonsten kannst dus dir ja schnell abändern...
function wechseln() {
schreibe da die funktion in
function wechseln(obj, on) {
um
if(document.getElementById("stark").className == "normal")
document.getElementById("stark").className = "extra";
else
document.getElementById("stark").className = "normal";
wird dann zu
if(on)
obj.className = "extra";
else
obj.className = "normal";
}
<p><strong id="stark" class="normal" onMouseOver="wechseln()" onMouseOut="wechseln()">ganz stark!</strong></p>
und hieraus mache ein
<p><strong class="normal" onMouseOver="wechseln(this, true)" onMouseOut="wechseln(this, false)">ganz stark!</strong></p>
damit sollte es gehen.
Grüße
David
Hallo zusammen,
ich habe eine Herausforderung: für Präsentationszwecke würde ich gerne einen Text (bold) bei Anklicken oder MouseOver permanent mit einer anderen Hintergrundfarbe versehen (highlighten) und zwar ohne die Verwendung von document.getElementById, da das HTML-File generisch aus Mindmanager erstellt wurde.
du suchst http://selfhtml.teamone.de/css/eigenschaften/pseudoformate.htm
Struppi.