/ Forside / Teknologi / Udvikling / Java Scripts / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java Scripts
#NavnPoint
molokyle 5410
Klaudi 2799
smorch 2439
kim 1360
Harlekin 1134
bentjuul 984
gibson 800
severino 695
Random 675
10  konsulent.. 626
Skift font-farve
Fra : Anders Truels Nielse~


Dato : 11-07-01 09:50

Hej

Jeg har et problem: jeg stinker til javascript. Derfor kan jeg ikke løse
følgende lille problemstilling:

På en side med vilkårligt mange tekststrenge vil jeg have, at når man
trykker på en af dem skifter den farve til rød. Trykker man derefter på en
anden skifter denne farve til rød OG den der før var rød bliver sort igen.

Jeg gætter på at strukturen ser nogenlunde således ud:

<body onload="javascript: sidste == blabla">

<script language="JavaScript">

var sidste;

function SkiftFarve(tekstnavn) {


if tekstnavn <> sidste {
tekstnavn.style.color = "red";
sidste.style.color = "black";
}
else
{
tekstnavn.style.color = "red";
}

sidste == tekstnavn;

}
</script>

<a id="tekst1" onClick="SkiftFarve(tekst1);">Dette er en lille kop tis</a>

<a id="tekst2" onClick="SkiftFarve(tekst2);">Dette er også en lille kop
tis</a>


Når man klikker på noget tekst sender jeg tekstens id til funktionen. Hvis
denne afviger fra id'en på den man sidst klikkede på (variablen sidste)
betyder det, at man har klikket på et nyt link og dettes farve skiftes til
rød og sidste's frave skiftes til sort.

Giver det nogen mening?

Hvordan løser jeg dette lille problem?

Mange tak.

Anders




 
 
verbal (11-07-2001)
Kommentar
Fra : verbal


Dato : 11-07-01 15:23

Hej Anders

Måske det her virker ...

Script//
var lObj;
function doTxtColor(obj){
obj.style.color='FF0000';
if(lObj){
lObj.style.color='000000';
}
lObj=obj;
}

HTML//
<DIV onClick="doTxtColor(this);">Dette er en test</DIV>


Peace
-Tommy


"Anders Truels Nielsen" <anders@knights.dk> wrote in message
news:2nU27.15$Zy2.1307306@news1...
> Hej
>
> Jeg har et problem: jeg stinker til javascript. Derfor kan jeg ikke løse
> følgende lille problemstilling:
>
> På en side med vilkårligt mange tekststrenge vil jeg have, at når man
> trykker på en af dem skifter den farve til rød. Trykker man derefter på en
> anden skifter denne farve til rød OG den der før var rød bliver sort igen.
>
> Jeg gætter på at strukturen ser nogenlunde således ud:
>
> <body onload="javascript: sidste == blabla">
>
> <script language="JavaScript">
>
> var sidste;
>
> function SkiftFarve(tekstnavn) {
>
>
> if tekstnavn <> sidste {
> tekstnavn.style.color = "red";
> sidste.style.color = "black";
> }
> else
> {
> tekstnavn.style.color = "red";
> }
>
> sidste == tekstnavn;
>
> }
> </script>
>
> <a id="tekst1" onClick="SkiftFarve(tekst1);">Dette er en lille kop tis</a>
>
> <a id="tekst2" onClick="SkiftFarve(tekst2);">Dette er også en lille kop
> tis</a>
>
>
> Når man klikker på noget tekst sender jeg tekstens id til funktionen. Hvis
> denne afviger fra id'en på den man sidst klikkede på (variablen sidste)
> betyder det, at man har klikket på et nyt link og dettes farve skiftes til
> rød og sidste's frave skiftes til sort.
>
> Giver det nogen mening?
>
> Hvordan løser jeg dette lille problem?
>
> Mange tak.
>
> Anders
>
>
>



Anders (13-07-2001)
Kommentar
Fra : Anders


Dato : 13-07-01 11:08

verbal wrote in dk.edb.internet.webdesign.clientside:

Mange tak, det virker.

Må jeg være så dristig at spørge om en ting til?

Hvad hvis jeg har en tabel-struktur der ser således ud:

<TABLE>
   <TR>
      <TD class="Text">Række a</TD>
      <TD class="Data">a1</TD>
      <TD class="Data">a2</TD>
   </TR>
   <TR>
      <TD class="Text">Række b</TD>
      <TD class="Data">b1</TD>
      <TD class="Data">b2</TD>
   </TR>
</TABLE>

Og jeg ønsker at indbygge følgende funktionalitet:

Ved et klik i en vilkårlig række ændres class for alle felter i den række
(jeg er ude på at fremhæve en række). Klikker man i endnu et felt sker det
samme med denne række (den gamle række er stadig fremhævet).

Ved klik i et felt i en række som er fremhævet vender denne rækkes felter
tilbage til deres oprindelige class.

Kan det lade sig gøre? Er det meget omfattende? Det skal kun være IE 5.5
kompatibelt.

Er der nogen der kan pege mig i den rigtige retning?

Anders




> Hej Anders
>
> Måske det her virker ...
>
> Script//
> var lObj;
> function doTxtColor(obj){
> obj.style.color='FF0000';
> if(lObj){
> lObj.style.color='000000';
> }
> lObj=obj;
> }
>
> HTML//
> <DIV onClick="doTxtColor(this);">Dette er en test</DIV>
>
>
> Peace
> -Tommy
>
>



--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

verbal (13-07-2001)
Kommentar
Fra : verbal


Dato : 13-07-01 13:23

Hej Anders

Hvor stor forskel er der på den class som hedder "text" og "dato" ?
For så vil det være letter at rykke function/class op på "<TR>" level...

Peace
-Verbal

"Anders" <anders@knights.dk> skrev i en meddelelse
news:9imhab$hjk$1@sunsite.dk...
> verbal wrote in dk.edb.internet.webdesign.clientside:
>
> Mange tak, det virker.
>
> Må jeg være så dristig at spørge om en ting til?
>
> Hvad hvis jeg har en tabel-struktur der ser således ud:
>
> <TABLE>
> <TR>
> <TD class="Text">Række a</TD>
> <TD class="Data">a1</TD>
> <TD class="Data">a2</TD>
> </TR>
> <TR>
> <TD class="Text">Række b</TD>
> <TD class="Data">b1</TD>
> <TD class="Data">b2</TD>
> </TR>
> </TABLE>
>
> Og jeg ønsker at indbygge følgende funktionalitet:
>
> Ved et klik i en vilkårlig række ændres class for alle felter i den række
> (jeg er ude på at fremhæve en række). Klikker man i endnu et felt sker det
> samme med denne række (den gamle række er stadig fremhævet).
>
> Ved klik i et felt i en række som er fremhævet vender denne rækkes felter
> tilbage til deres oprindelige class.
>
> Kan det lade sig gøre? Er det meget omfattende? Det skal kun være IE 5.5
> kompatibelt.
>
> Er der nogen der kan pege mig i den rigtige retning?
>
> Anders
>
>
>
>
> > Hej Anders
> >
> > Måske det her virker ...
> >
> > Script//
> > var lObj;
> > function doTxtColor(obj){
> > obj.style.color='FF0000';
> > if(lObj){
> > lObj.style.color='000000';
> > }
> > lObj=obj;
> > }
> >
> > HTML//
> > <DIV onClick="doTxtColor(this);">Dette er en test</DIV>
> >
> >
> > Peace
> > -Tommy
> >
> >
>
>
>
> --
> Brug Validator service: http://www.html.dk/validator
> - Tast din URL én gang, og validér dokumentet hos 12 validatorer
> - Understøtter HTML, CSS og søgemaskineoptimering



Anders (13-07-2001)
Kommentar
Fra : Anders


Dato : 13-07-01 14:11

Jeg tænkte på det, men det SKAL være forskellige class'es. Men når en række
fremhæves skal der kun ske een ting: bagrundsfarven for hele rækken ændres.
Det kan gøres på <TR> niveau.

obj.style.background = "red";

Hvis bare, at der er en måde hvorpå jeg kan ophæve denne baggrundsfarve som
jeg har givet <TR>'en, således at <TD>'erne igen henter deres baggrundsfarve
fra deres respektive class'es - så burde mit problem være løst.

Anders


verbal wrote in dk.edb.internet.webdesign.clientside:
> Hej Anders
>
> Hvor stor forskel er der på den class som hedder "text" og "dato" ?
> For så vil det være letter at rykke function/class op på "<TR>" level...
>
> Peace
> -Verbal
>


--
Brug Validator service: http://www.html.dk/validator
- Tast din URL én gang, og validér dokumentet hos 12 validatorer
- Understøtter HTML, CSS og søgemaskineoptimering

verbal (13-07-2001)
Kommentar
Fra : verbal


Dato : 13-07-01 15:36

Hej Anders

Nu var det jo lige en lidt anden ting men jeg fandt da noget der
virkede, det kunne nok gøres
på en mere simpel måde, men det virker...

Jeg har langt ud på nettet her : www.raggy.dk/anders

Peace
-Verbal

"Anders" <anders@knights.dk> skrev i en meddelelse
news:9ims0o$fb2$1@sunsite.dk...
> Jeg tænkte på det, men det SKAL være forskellige class'es. Men når en
række
> fremhæves skal der kun ske een ting: bagrundsfarven for hele rækken
ændres.
> Det kan gøres på <TR> niveau.
>
> obj.style.background = "red";
>
> Hvis bare, at der er en måde hvorpå jeg kan ophæve denne baggrundsfarve
som
> jeg har givet <TR>'en, således at <TD>'erne igen henter deres
baggrundsfarve
> fra deres respektive class'es - så burde mit problem være løst.
>
> Anders
>
>
> verbal wrote in dk.edb.internet.webdesign.clientside:
> > Hej Anders
> >
> > Hvor stor forskel er der på den class som hedder "text" og "dato" ?
> > For så vil det være letter at rykke function/class op på "<TR>" level...
> >
> > Peace
> > -Verbal
> >
>
>
> --
> Brug Validator service: http://www.html.dk/validator
> - Tast din URL én gang, og validér dokumentet hos 12 validatorer
> - Understøtter HTML, CSS og søgemaskineoptimering



Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408934
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste