Avatar billede davidskp Nybegynder
11. marts 2005 - 01:33 Der er 9 kommentarer og
1 løsning

Sætte og checke cookie

Jeg har følgende script som jeg bruger til at ændre størrelsen af brødteksten på min side:

function largetext() {
    document.getElementById("content").style.fontSize = "13px";
}

function normaltext() {
    document.getElementById("content").style.fontSize = "11px";
}

Jeg vil så gerne have at der bliver sat en cookie så teksten forbliver den størrelse man har valgt på alle siderne og også når man kommer tilbage til siden en anden gang.

hvordan sætter jeg cookien og hvordan checker jeg om den er sat i onLoad?

Jeg tænkte at largetext() sætter cookien og normaltext() sletter cookien da det jo er default fontsize...

På forhånd tak for hjælpen :)

/dave
Avatar billede jih Nybegynder
11. marts 2005 - 12:06 #1
cookies bliver sat og læst ved document.cookie..

sæt cookie = document.cookie = "navn=vaerdi";
læs cookie = (fx) alert(document.cookie);

du kan læse mere her: http://www.netspade.com/articles/javascript/cookies.xml
og her: http://techpatterns.com/downloads/javascript_cookies.php :)

// WebPsycho
Avatar billede roenving Novice
11. marts 2005 - 12:33 #2
<script type="text/javascript">
function setFont(size){
  document.getElementById("content").style.fontSize = size;
  document.cookie = "size=" + size +";expires=Fri, 1 Jan 2010 00:00:00 UTC";
}
window.onload = function(){
  if(document.cookie&&document.cookie.indexOf("size=")>-1){
    val = document.cookie.split("size=");
    document.getElementById("content").style.fontSize = val.split(";")[0];
  }
}
</script>
Avatar billede davidskp Nybegynder
11. marts 2005 - 14:32 #3
roenving jeg kan ikk umiddelbart få det til at virke...jeg har lagt scriptet ind og lavet 2 links der hedder

<a href="java script:setFont(13);">Større</a>
<a href="java script:setFont(11);">Mindre</a>

Men der sker ikke noget når jeg klikker på dem...hvad gør jeg galt?
Avatar billede davidskp Nybegynder
11. marts 2005 - 14:34 #4
har også prøvet med setFont(13px); - det virker heller ikke
Avatar billede roenving Novice
11. marts 2005 - 14:35 #5
Det skal være tekststrenge (og så skal der være px med !-)

<a href="#" onclick="setFont('13px');return false;">Større</a>
<a href="#" onclick="setFont('11px');return false;">Mindre</a>
Avatar billede davidskp Nybegynder
11. marts 2005 - 14:50 #6
ok nu virker linksne...men den sætter vist ikke cookien rigtigt...eller osse checker den ikke rigtigt...den kan ihertfald ikke huske tekststørrelsen på de andre sider...og ie siger også "Der opstod en fejl på siden" når den loader ind...så der må være fejl i onload
Avatar billede roenving Novice
11. marts 2005 - 15:17 #7
-- argh,

window.onload = function(){
  if(document.cookie&&document.cookie.indexOf("size=")>-1){
    val = document.cookie.split("size=")[1];
    document.getElementById("content").style.fontSize = val.split(";")[0];
  }
}
Avatar billede davidskp Nybegynder
11. marts 2005 - 15:23 #8
super! nu virker det lige som det skal :)

Mange tak roenving - det var en stor lettelse at få det ordnet :)

Smider du et svar så du kan få dine velfortjente point?
Avatar billede roenving Novice
11. marts 2005 - 15:25 #9
Velbekomme '-)
Avatar billede roenving Novice
11. marts 2005 - 15:30 #10
-- og tak 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