Avatar billede kimgr00 Nybegynder
09. februar 2004 - 19:07 Der er 10 kommentarer og
1 løsning

Find css værdi

Hvorfor virker function ikke

<style>
    div { color:#E4E4E4;  }
</style>
<script language="javascript">
    alert(document.getElementById('div1').style.getAttribute( 'color' ))
</script>
</head>
<body>
<div id="div1">hej med dig</div>

Det jeg vil er at få fat i hvilken fave teksten i <div> har, med JS
Avatar billede pelkjaer Nybegynder
09. februar 2004 - 19:50 #1
alert(document.getElementById("div1").style.getAttribute("color"));

Men det kræver at du sætter en style property direkte på elementet: style="color:black;"
Avatar billede kimgr00 Nybegynder
09. februar 2004 - 20:08 #2
Det kan jeg godt se logikken i. Dvs. at getAttribute kun kan bruges hvis informationen står direkte i dokumentet. Men er der så en anden måde hvorved jag kan få fat i verdien.
Avatar billede pelkjaer Nybegynder
09. februar 2004 - 20:15 #3
Du burde kunne bruge

document.styleSheets[0].cssRules[0].style.color
Avatar billede pelkjaer Nybegynder
09. februar 2004 - 20:15 #4
evt:

document.styleSheets[0].cssRules["div"].style.color
Avatar billede pelkjaer Nybegynder
09. februar 2004 - 20:19 #5
alert(document.styleSheets[0].rules.item("div").style.color);
Avatar billede kimgr00 Nybegynder
09. februar 2004 - 20:44 #6
Det er rigtig svaret. Men det har ikke løst mit problem hvorfor ved jeg ikke. Men kan du ikke lige forklage mig hvad "styleSheets[0]", "rules" og item("div") gør.
Avatar billede kimgr00 Nybegynder
09. februar 2004 - 20:51 #8
Uden at have læst det igennem med har du en ide, for mit problem er at der er en
div.test{color:#E4E4E4;}
og en
div.test1{color:#D3D3D3;}
den vælger altid nr. 1 altså div.test
Avatar billede kimgr00 Nybegynder
09. februar 2004 - 20:56 #9
Lige maget, jeg har fundet ud af det ved at læse på det link du gav mig. Mange tak for hjælpen. :-)
Avatar billede pelkjaer Nybegynder
09. februar 2004 - 21:00 #10
Tager din første class
alert(document.styleSheets[0].rules.item(0).style.color);

Tager din næste class
alert(document.styleSheets[0].rules.item(1).style.color);

ok?
Avatar billede grunken Nybegynder
09. februar 2004 - 21:44 #11
og så gør det lige lidt mere browsercompatibelt, da IE er den enste der bruger rules, og altså dermed holder sig uden for standarderne :o)

<script type="text/javascript">
cssval = (document.styleSheets[0].rules)?document.styleSheets[0].rules:document.styleSheets[0].cssRules;
alert(cssval[1].style.color);
</script>
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