Avatar billede psoriasis Nybegynder
28. november 2003 - 18:45 Der er 4 kommentarer og
1 løsning

Muligt at ændre tekstfarve med JavaScript?

Hej,

Jeg sidder og roder lidt med noget JavaScript, og det jeg vil er, at når man klikker på et link bliver tekstfarven i en <input type="text"...> ændret. Jeg er ikke den vilde javascript-koder, men jeg er kommet frem til følgende:

<script language="javascript">
function showPalette()
{
document.getElementById("colorpalette").style.visibility = "visible";
}
function hidePalette()
{
document.getElementById("colorpalette").style.visibility = "hidden";
}
function getColor()
{
document.getElementById("color").style.color = document.getElementById("selectedcolor").value;
}
</script>

<div id="colorpalette" style="visibility:hidden;background-color:#99cc00;width:200px;height:200px;font-family:verdana;font-size:10px;">
<a href="#" onClick="getColor(), hidePalette()" value="red" id="selectedcolor">rød</a>
<a href="#" onClick="getColor(), hidePalette()" value="blue" id="selectedcolor">blå</a>
</div>
<a href="#" onClick="showPalette()">farver</a>
<input type="text" id="color" value="tekst">

- Men dette virker ikke, da der tilsyneladende bare bliver hentet første objekt med id'et selectedcolor's value. Så jeg ville høre om man på en måde kan få tekstfarven defineret ud fra sidst klikkede link's value, eller sådan noget.

Eksempel af siden kan evt. ses på www.tekoworld.dk/temp/test.html


Hvis I skal vide mere er I naturligvis velkomne til at spørge.


- Toke (aka. Psoriasis)
Avatar billede skovenborg Nybegynder
28. november 2003 - 20:35 #1
id'er må aldrig hedde det samme, og desuden er der ikke noget der hedder value på et link-element. I stedet skulle du hellere gøre sådan:
function getColor(farve)
{
document.getElementById("color").style.color = farve;
}

....
<a href="#" onClick="getColor("red"), hidePalette()">rød</a>
<a href="#" onClick="getColor("blue"), hidePalette()">blå</a>
Avatar billede skovenborg Nybegynder
28. november 2003 - 20:36 #2
og så synes jeg også du burde skrive:
<a href="#" onClick="getColor("red"); hidePalette()">rød</a>
<a href="#" onClick="getColor("blue"); hidePalette()">blå</a>

for at det er lidt bedre javascript :-)
Avatar billede roenving Novice
29. november 2003 - 06:07 #3
<select name="minSelect" id="minSelect" onchange="document.getElementById('minSpan').style.color=this.value">
    <option value="">-- Vælg her --<br>
    <option value="red">Rød<br>
    <option value="blue">Blå<br>
    <option value="green">Grøn<br>
</select>

<span id="minSpan">En span-tekst</span>
Avatar billede psoriasis Nybegynder
30. november 2003 - 14:26 #4
skovenborg >> Tak for hjælpen, med lidt ændringer virkede det, der var lige et problem med " i getColor(), så dem har jeg udskiftet med '.
Avatar billede skovenborg Nybegynder
30. november 2003 - 21:25 #5
--- takker for point :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester