Avatar billede heyn Nybegynder
03. januar 2015 - 04:13 Der er 6 kommentarer og
1 løsning

Min jquery css ændrer ikke background-color

Hej Eksperter

Jeg har et problem med Jquery når jeg vil skifte baggrundsfarve på buttons.

Følgende fungerer ikke på min side men fungerer på min testside:

$("#changeButton").css("background-color","770000");

Derimod fungerer

$("#changeButton").css("background-color","red");

fuínt på begge sider.

På min testside includerer jeg

<script src="inc/js/jquery-1.11.2.min.js" type="text/javascript" charset="utf-8"></script>

Mens jeg på min rigtige side includerer

<link href="inc/css/smoothness/jquery-ui-1.8.2.custom.css" type="text/css" rel="stylesheet" />
<script src="inc/js/jquery-1.11.2.min.js" type="text/javascript" charset="utf-8"></script>
<script src="inc/js/jquery-ui-1.8.6.custom.min.js" type="text/javascript" charset="utf-8"></script>
<script src="inc/js/jquery.ui.datepicker-da.js" type="text/javascript" charset="utf-8"></script>
<script src="inc/js/jquery.numeric.pack.js" type="text/javascript" charset="utf-8"></script>

Håber nogle kan hjælpe mig med problemet, for jeg er kørt helt fast.

Venligst Christian
Avatar billede Slater Ekspert
03. januar 2015 - 08:16 #1
770000 er ikke en farve. #770000 er.
Avatar billede heyn Nybegynder
03. januar 2015 - 12:50 #2
I JQuery skal man jo ikke anvende #. Ideen med JQuery er jo at det skal være simplere.
Som nævnt fungerer præcis den samme kode på min simple testside.
Avatar billede keysersoze Guru
03. januar 2015 - 13:00 #3
så har du misforstået jQuery - eller i hvert fald brugen af det. Det er korrekt at det er en let genvej til JavaScript, men det betyder ikke at du kan skrive invalide values og så kan jQuery gætte sig til resten -  og invalid er netop hvad 770000 er så den korrekt value vil være #770000. Hvis du kigger i deres dokumentation omkring css() vil du også finde brug af # her.

Hvis det virker et sted (hvilket vil undre mig lidt) men ikke et andet er det mere held end forstand men så vil du kunne benytte din developer toolbar til at forstå hvorfor. Det vil det ikke ændre ved at #770000 er den korrekt værdi.
Avatar billede heyn Nybegynder
03. januar 2015 - 13:52 #4
Tak - Nu virker det.

JQuery har det jo med at det til tider at tillade at man udtrykke det samme på forskellig vis. Men måske kun i de nyeste udgaver. Hvad ved jeg.
De andre plugins til UI på siden er ikke de nyeste, da de er indsat i koden for mindst 4 år siden. Det er måske årsagen. Jeg vil undersøge om der ikke findes nyere udgaver til dem også. Bare for en ordens skyld.
Grundlæggende var min kode kopieret fra nettet til en div popup, så jeg er altså ikke alene om at have misforstået det :)

Men tak for hjælpen.

Smid et svar

Venligst Christian
Avatar billede Slater Ekspert
03. januar 2015 - 14:14 #5
Du kan ofte udtrykke det samme på forskellig vis, ja, men altså ikke med farvekoder.

Pointen er at # betyder hex. Hvis det ikke er der, så er tallet et almindeligt decimaltal, altså det vi normalt regner i, og 770000 betyder syvhundredehalvfjerstusind. Det er ikke en farve.
Sætter vi # foran, så betyder det hextal 77, 00 og 00, altså oversat til decimal: 119, 0, 0.

Det kan du også godt bruge i CSS, men så skal du bruge funktionen rgb, altså background-color: rgb(119, 0, 0);

Du vil som regel aldrig kunne skrive farver som hextal uden # foran. Det har ikke noget med simplicitet at gøre, det er enheden for hvad du regner i. At udelade det er som at sige "Denne ting vejer 9".
Avatar billede heyn Nybegynder
03. januar 2015 - 14:25 #6
Jo, det med hex er jeg klar over.
Og forskellen lå ikke i at opgradere UI.
Nå, jeg har skiftet til #, da det jo under alle omstændigheder løser problemet hvad enten det er ny el. gammel version.

Svaret???
Avatar billede Slater Ekspert
03. januar 2015 - 14:40 #7
Hvis det var mig, så her.
Godt nytår, kan man vel stadig godt sige.
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

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