Thomas ST Skrevet 11. november 2009 Del Skrevet 11. november 2009 Hei! Jeg har en veldig basic oppgave på skolen som går ut på bl.a å skifte bakgrunnsfarge på en HTML-side med JScript. Jeg har valgt å bruke en avkrysningsboks (checkbox) til å bytte mellom hvit og rød bakgrunnsfarge, men dette skulle visst være så mye mer komplisert enn på visual basic. Derfor lurer på om noen kan gi meg en kort og grei pekepinn i riktig retning? Kan laste opp koden min så langt om noen vil se den På forhånd takk for alle svar! -Thomas Lenke til kommentar
siDDis Skrevet 12. november 2009 Del Skrevet 12. november 2009 <input type="checkbox" onclick="body.style.background='red';"/> Lenke til kommentar
JarlG Skrevet 12. november 2009 Del Skrevet 12. november 2009 (endret) Sjølv om siDDIs metode fungerar, vil eg likevel komme med eit par innspel; Det kan vere lurt å inkludere ei eksterm Javascript fil, kontra inline kode som vist over. Prinsippet er veldig likt ekstern CSS, og du trenger berre sette inn riktige parameter i ein <script> -tag; <script type="text/javascript" src="javascript.js"> </script> Taggen har ein avsluttningstag fordi det er også mogleg å putte inn kode imellom disse. Taggen går forresten rett inn i <head>. Heile poenget med denne eksterne .js-fila er at vi skal få null inline javascript, som er eit av mine prinsipper. Det fyste vi må da gjere i javascript fila, er at koden skal laste etter sjølve htmlen. Dette er fordi checkboxen må i seg sjølv eksistere før vi kan referere til den i .js-fila. Koden er relativt forståelig, og skrivast slik: window.onload = function() { //code here }; Enkelt sagt, så seier den at ein funksjon skal kjøre når 'window' er lasta. Inni her kan vi referere til denne checkboxen, og tildele ein onclick-verdi; function rød() { body.style.backgroundcolor = "red"; }; window.onload = function() { document.getElementById('checkboxid').onclick = rød; }; Her lager vi ein funksjon som endrar body sin bakgrunnsfarge til rød, og seier at når vindauget er lasta, skal checkboxen med iden "checkboxid" kjøre funksjonen når den blir klikket på. Funksjonen rød plasserer først fordi den må vere lasta før den skal køyrast. Tar forbehold for feil, da det er skrevet i farta, og eg har ikkje koda javascript på ei goood stund. Endret 12. november 2009 av JarlG Lenke til kommentar
siDDis Skrevet 12. november 2009 Del Skrevet 12. november 2009 Heile poenget med denne eksterne .js-fila er at vi skal få null inline javascript, som er eit av mine prinsipper. Jaha? Du er vell ikkje ein av dei som legger ut ein js fil for annakvar funksjon? Eg har sett nettsteder som inkluderer 10-30 ekstra js filer, problemet med dette er at det sliter maksimalt på webserveren. Antall forespørsler bør bli satt til eit absolutt minimum for ei side. Inline javascript er ganske vanleg å bruke og har sine fordeler med at ein er meir direkte. window.onload har sine ulemper også, f.eks funksjonen du kaller på starter når alt er ferdig lasta inn, det inkluderer bileter/flash osv... Det beste er å starte etter DOM'en er ferdig lastet inn, les meir her -> http://dean.edwards.name/weblog/2005/09/busted/ Det enklaste er å kalle på funksjonen heilt i bånn av nettsiden. Lenke til kommentar
Jonas Skrevet 13. november 2009 Del Skrevet 13. november 2009 (endret) Selv er jeg litt fan av inkludering av javascript via serversidekode som limer sammen det som trengs. Da er plutselig 10-30 filer blitt til én forespørsel. Samme kan gjøres med masse små bilder. (YouTube gjør blant annet dette, http://s.ytimg.com/yt/img/master-vfl125983.png) Endret 13. november 2009 av Jonas Lenke til kommentar
Thomas ST Skrevet 15. november 2009 Forfatter Del Skrevet 15. november 2009 Takker for alle svarene selv om de kom litt for seint Oppgaven gikk bra uansett -Thomas Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå