Dynamisk HTML JavaScript och webbläsarens objektmodell
|
|
- Mona Jansson
- för 8 år sedan
- Visningar:
Transkript
1 Dynamisk HTML 1 JavaScript och webbläsarens objektmodell Ove Lundgren (2009) Ove Lundgren DOMDHTML2009.doc
2 Innehåll Dynamisk HTML Webbläsarens variabler och metoder. Objektmodellen. Anropa metoder med JavaScript Händelsehanteraren onclick Skriv egna JavaScript-metoder Händelsehanteraren onload Variabler och metoder i objektet document Händelsehanterarna onmouseover och onmouseout Referera till objekt med name Referera till objekt med this Metoden bytabild() JavaScript JavaScript-övningar Förkunskapskrav Du bör vara väl förtrogen med HTML och CSS Det är en fördel om du kan (grunderna i) något programmeringsspråk (t.ex. C++ eller Java) Arbetssätt Läs noga igenom all text och gör övningarna. Övningar markeras med en liten kvadrat till vänster, så här t.ex: Skriv in följande (o.s.v.) Dynamisk HTML Förr var webbsidor statiska: När de väl var laddade gick det inte att ändra utseende eller innehåll utan att ladda om sidan. Numera är dokument på webben dynamiska: Utseende och innehåll kan förändras utan att sidan behöver laddas på nytt. För att bygga dynamiska webbsidor används dynamisk HTML (DHTML). DHTML är inte ett speciellt språk eller verktyg. DHTML är en kombination av följande: HTML CSS DOM ( = Document Object Model) JavaScript HTML och CSS känner du redan till. DOM är en standard för hur elementen i ett webbdokument är organiserade och innehåller metoder för att påverka elementens egenskaper. JavaScript utnyttjas för att exekvera metoderna i DOM, för att utföra beräkningar mm. Ove Lundgren DOMDHTML2009.doc
3 Webbläsarens variabler och metoder. Objektmodellen. I en webbläsare - t.ex. MicroSoft Internet Explorer (IE) och Mozilla Firefox finns ett antal inbyggda variabler och metoder (ibland använder man ordet funktioner i stället för metoder). Några exempel på variabler: navigator.appname navigator.appversion window.status Webbläsarens namn, t.ex. "Netscape" Webbläsarens versionsnummer t.ex. "4.5.." Vad statusraden visar (längst ned i fönstret) Exempel på metoder (funktioner) : window.alert(str) Visar meddelanderuta med texten str samt OK-knapp window.confirm(str) Meddelanderuta med texten str samt OK- och Avbryt-knapp Fuktionsvärdet blir true om man klickar OK, false om man klickar false window.prompt(str, str2) En meddelanderuta med texten str. Försedd med ett inmatningsfält som visar standardvärdet str2 Funktionsvärde blir det som står / skrivs in i inmatningsfältet window.setinterval(m,t) Startar timer. Metoden m anropas var t:e millisekund window.settimeout(m,t) Fördröjning. Metoden m anropas efter t millisekunder. window.open() Öppna nytt fönster Vissa metoder kräver att man skriver argument mellan parenteserna när metoden anropas. Detta är värden, tal eller texter, som "skickas med" för att på något sätt bearbetas av metoden. Om vi t.ex. gör anropat window.alert("hej") så är textsträngen "HEJ" argument. Metoden kommer att skriva ut just den texten i en meddelanderuta. Vissa metoder kräver flera argument, andra inget alls En del metoder lämnar ett värde, ett funktionsvärde, när de anropas. Sådana metoder kallas ofta funktioner. window.prompt() är exempel på en sådan. Funktionen kommer all lämna ett värde (returnera ett värde), nämligen den text som användaren matar in i inmatningsfältet. Metoder och variabler i webbläsaren är organiserade i en objektmodell: - Tänk dig ett objekt som något som äger en rad metoder och variabler. - Varje metod eller variabel i webbläsaren tillhör ett visst objekt. De variabler och metoder ovan vars namn börjar med navigator tillhör ett objekt som heter navigator. De variabler och metoder ovan vars namn börjar med window tillhör ett objekt som heter window. Om du har studerat objektorienterad programmering är du bekant med begreppet objekt. Om du inte har gjort det så räcker det (i denna kurs) att du tänker dej ett objekt som just detta: - Något som har en uppsättning metoder och variabler. Ove Lundgren DOMDHTML2009.doc
4 Anropa metoder med JavaScript För att exekvera en metod i webbläsarens objektmodell används JavaScript. JavaScriptkod skrivs (normalt) mellan taggarna och och kan (i princip) placeras var som helst i koden. JavaScript startar en metod i webbläsarens objektmodell om man helt enkelt skriver den aktuella metodens namn, med eventuellt argument mellan parenteserna. En JavaScript-sats bör också ha ett semikolon (;) på slutet. Skriv in koden nedan. Spara som dovn1.html. Provkör. (Meddelanderuta med texten "HEJ" visas) window.alert("hej!"); Lägg märke till: En sträng (en text) skrivs inom citationstecken, t.ex. "HEJ" Ändra scriptet till: window.alert(navigator.appname); (Namnet på din web browser visas ) Ändra sedan till: window.alert("din webbläsare: " + navigator.appname + " Version " + navigator.appversion); (Namnet på din web browser med versionsnummer visas ) Lägg märke till hur man använder plustecken för att sammanfoga (konkatenera) textsträngar. Naturligtvis kan scriptet innehålla fler satser: Satserna åtskiljs av semikolon (;) I exemplet nedan deklareras först i scriptet en variabel som vi kallar namnet En variabel är något som kan lagra en textsträng eller ett tal. En variabel deklareras med ordet var Metoden (funktionen) window.prompt(str, str2) returnerar det som matats in i textrutan. (Om man inte skriver in något returneras standardvärdet - defaultvärdet - str2. ) Metoden window.alert(str) skriver ut ett välkomstmeddelande. Ändra scriptet enligt nedan. Spara och provkör. var namnet; namnet = window.prompt("skriv ditt namn!", "Kalle"); window.alert("välkommen " + namnet + "!"); Om du inte har programmerat förut kan det vara svårt med alla nya begrepp. Var lugn! En utförligare genomgång om JavaScript kommer senare Ove Lundgren DOMDHTML2009.doc
5 Händelsehanteraren onclick Det finns en speciell typ av attribut i HTML-taggar som kallas händelsehanterare. Dessa används för att starta ett JavaScript då en viss händelse inträffar, t.ex. när man klickar på en knapp. Händelsen "klicka på ett element" fångas upp av händelsehanteraren onclick. Vi ska börja med att bekanta oss med just onclick. Vi ska låta en knapp reagera på klickning. Vi skriver in attributet onclick i taggen <input type = "button"...> Skriv in kod enligt nedan. Spara som dovn2.html <input type="button" value="tryck" onclick = " window.alert('hej!'); " > Efter händelsehanteraren skriver man ett tilldelningstecken och citationstecken: onclick = " " Mellan citationstecknen skriver man JavaScript-kod! Vi har nyss lärt oss att sådan kod normalt ska skrivas mellan - taggar, men här är alltså ett undantag! Efter händelsehanterare skrivs JavaScript-kod mellan citationstecknen onclick=" window.alert('hej!'); " Observera apostroftecknen kring strängen HEJ Observera en viktig sak: Normalt omges textsträngar med citationstecken ( t.ex. "HEJ!" ) För all JavaScript-kod som skrivs efter händelsehanterare (alltså inom "yttre" citationstecken) måste man byta eventuella citationstecken i själva koden mot apostroftecken! Här skriver vi 'HEJ!' Ändra enligt nedan: <input type="button" value="tryck" onclick = " var namnet; namnet=window.prompt('skriv ditt namn!', 'Kalle'); window.alert('välkommen ' + namnet + '!'); " > Man kan alltså skriva flera satser. Tänk bara på att åtskilja satserna med semikolon. Och - glöm inte: Eftersom scriptet står inom "yttre" citationstecken måste alla 'inre' citationstecken bytas ut mot apostrofer. Ove Lundgren DOMDHTML2009.doc
6 Skriv egna JavaScript-metoder Om det blir mycket kod ska man inte skriva koden direkt efter händelsehanteraren. Då definierar man i stället en egen metod och anropar denna i händelsehanteraren. Så här går det till: Skriv koden nedan. Spara som dovn3.html Definitionen av egna JavaScript-metoder placerar vi mellan <SCRIPT>-taggar i HEAD-blocket function hejsan() { var namnet; namnet = window.prompt("skriv ditt namn!", "Kalle"); window.alert("välkommen " + namnet + "!"); <input type="button" value="tryck" onclick=" hejsan(); " > Här anropas metoden hejsan() Man deklarerar en egen metod med ordet function följt av det metodnamn man har hittat på. I vårt exempel är metodnamnnet hejsan(). Observera att metodnamnet ska följas av två parenteser. Sedan kommer ett antal satser som står inom "krullparenteser" {. Där beskriver man vad metoden ska göra. Hela metoddefinitionen lägger man inom -taggar i -blocket. Metoden anropas sedan med metodens namn, hejsan(). Händelsehanteraren onload Händelsen "ny webbsida laddas och visas" fångas upp med händelsehanteraren onload. I föregående övning: Skriv in händelsehanteraren onload i body-taggen. Så här: <body bgcolor="silver" onload=" hejsan()"> Nu visas inmatningsrutan direkt när sidan laddats Ove Lundgren DOMDHTML2009.doc
7 Variabler och metoder i objektet document I webbläsarens objektmodell finns objektet document som har variabler och metoder som har att göra med den aktuella webbsidan! Exempel på variabler i document: document.bgcolor document.lastmodified Webbsidans bakgrundsfärg t.ex. "red" eller "#ff0000" Datum när sidan senast uppdaterades Variabler som beskriver egenskaper hos en bild på webbsidan (se bild nedan) : document.images[0].src Filnamn "Katt.jpg" document.images[0].width Bilden bredd t.ex "109" (pixels) document.images[0].height Bilden höjd t.ex "83" (pixels) Om webbsidan har ytterligare en bild har den variablerna (se bild nedan) : document.images[1].src Filnamn "Lejon.jpg" document.images[1].width Bilden bredd t.ex "109" (pixels) document.images[1].height Bilden höjd t.ex "83" (pixels) Variabler för formulär: Antag att en webbsida har ett formulär med två textfält (se bild nedan) : document.forms[0].elements[0].value document.forms[0].elements[1].value Textinnehållet i det första textfältet t.ex Mjau Textinnehållet i det andra textfältet t.ex. Grrr document.images[0] document.images[1] Mjau Grrr document. forms[0].elements[0] document. forms[0].elements[1] Tryck Vi ska i nästa dynamiska övning utnyttja document.images[0].src för att påverka en bild. Vi ska få en <img>-tagg att växla bild. Bilder för övningarna finns här: dynabilder.zip Ove Lundgren DOMDHTML2009.doc
8 Händelsehanterarna onmouseover och onmouseout Händelsen "muspilen går in över ett element" fångas upp av händelshanteraren onmouseover Händelsen "muspilen lämnar ett element" fångas upp av händelshanteraren onmouseout Vi ska få något att hända då muspilen går in över, respektive lämnar, en länk. Vi placerar alltså händelsehanterarna i ankartaggen, a. Skriv in nedanstående kod och spara som dovn4.html och testa. <h1>katter</h1> <img src = "Katt.jpg"> <a href="#" onmouseover="document.images[0].src = 'Lejon.jpg';" onmouseout="document.images[0].src = 'Katt.jpg';" > Klicka </a> (Ny bild visas när muspilen går in över länken. Den ursprungliga återkommer när muspilen lämnar ) Flytta <img>-taggen så att den ersätter länk-texten Klicka. Så här alltså: <h1>katter</h1> <a href="#" onmouseover="document.images[0].src = 'Lejon.jpg';" onmouseout="document.images[0].src = 'Katt.jpg';" > <img src = "Katt.jpg" > </a> ( När muspilen går in över bilden byts bilden.. ) Tips: När bilden, som här, är en länk visas en ram kring bilden. Denna kan tas bort med attributet border="0" i <img>-taggen. Ove Lundgren DOMDHTML2009.doc
9 Referera till objekt med name När vi skriver t.ex. document.images[0] så pekar vi ut det objekt som "håller reda på" den första bilden. ( Vi kan då påverka någon egenskap hos det objektet, t.ex. innehållet med document.images[0].src ) Ofta säger vi att document.images[0] är en pekare eller en referens till objektet. Det finns andra sätt att referera till objekt: Om vi utnyttjar attributet name för att sätta ett namn på en <img>-tagg (t.ex. name = "minbild" ) så kan man sedan referera till <img>-elementet med detta namn (t.ex. document.minbild ) Gör följande ändringar i dovn4.jpg. Spara sedan filen som dovn5.jpg <h1>katter</h1> <a href="#" onmouseover="document.kattbild.src = 'Lejon.jpg';" onmouseout="document.kattbild.src = 'Katt.jpg';" > <img src = "Katt.jpg" name = "kattbild" > </a> Referera till objekt med this I äldre webbläsare var man ofta hänvisad till ankartaggen (som i föregående avsnitt) när man behövde ett muskänsligt element. Men om vi nu inte har för avsikt att skapa en länk till en annan sida, utan bara vill att bildelementet ska byta innehåll när vi pekar på det, så kan vi numera skriva händelsehanterarna i själva <img>-taggen. Skriv in koden nedan. Spara som dovn6.html <h1>katter</h1> <img src = "Katt.jpg" name = "kattbild" onmouseover = "document.kattbild.src='lejon.jpg';" onmouseout = "document.kattbild.src='katt.jpg';" > Enkelt, eller hur? Referensen document.kattbild i övningen ovan refererar ju till det element där den är skriven. Referensen pekar på sitt eget element! I sådana fall kan vi ersätta referensen med ordet this. Ändra så att koden blir enligt nedan: <h1>katter</h1> <img src = "Katt.jpg" onmouseover = "this.src = 'Lejon.jpg';" onmouseout = "this.src = 'Katt.jpg';" > Ove Lundgren DOMDHTML2009.doc
10 Metoden bytbild() I exemplen ovan skriver vi JavaScript inom citationstecken direkt efter onmouseover respektive onmouseout. Många gånger anropar man i stället här en egendefinierad metod. Nedan finns ett förslag på hur en sådan metod kan utformas: Skriv in koden nedan. Spara filen som dovn7.html function bytbild( x ) { if (x == 0) document.kattbild.src = "Katt.jpg"; else document.kattbild.src = "Lejon.jpg"; <h1>katter</h1> <img src = "Katt.jpg" name = "kattbild" onmouseover = "bytbild(1);" onmouseout = "bytbild(0);" > Metoden bytbild(x) är försedd med en parameter som vi kallat x. När metoden anropas med bytbild(0); så kommer parametern x att få värdet 0 (noll). Se på koden i metoddefinitionen! Där står det att om x är lika med 0 (noll) så ska Katt.jpg visas, annars, det vill säga om x inte är lika med noll, så ska bilden Lejon.jpg visas. Det värde som man skriver på parameterns plats vid anrop brukar man kalla metodens argument. Observera att vi inte kan använda referensen this här eftersom elementen inte pekas ut inuti <img>-taggen. Vi har nu sett att i html-kod som är avsedd för moderna webbläsare kan vi skriva in händelsehanterare i t.ex. <img>- och <div>-taggar och på sätt göra dessa muskänsliga. Vi kommer att lära oss sätt att referera till andra element än bilder och formulär. Vi kommer då att dynamiskt kunna förändra textinnehåll och texters utseende, ändra storlek och placering hos lager, och på så sätt skapa animeringar, med mera. Allt detta tar vi upp i häfte 2. Se till att du har sparat filen dovn7.html ovan. Vi använder den i häfte 2. Detta häfte avslutar vi med en kort genomgång av scriptspråket JavScript och några övningar. Ove Lundgren DOMDHTML2009.doc
11 JavaScript Var skrivs JavaScript-kod? JavaScript skrivs inom -taggar. Satserna i JavaScript åtskiljs av semikolon (;) och/eller genom radbyte. Exempel: <script language = "JavaScript"> sats; sats; sats sats; Råd: Använd semikolon så att du får överensstämmelse med C++ och Java! Efter en händelsehanterare skrivs JavaScript inom citationstecken. Eventuella citationstecken i koden byts då ut mot apostrof. Exempel: onclick=" window.alert('hej!'); " Kommentarer En kommentar är ett stycke kod som nonchaleras av webbläsaren (Används för att skriva minnesanteckningar, med mera, i koden) I JavaScript skriver man kommentarer på samma sätt som i C++ och Java: Efter en "dubbel-slash" ( // ) - kommentaren gäller då raden ut. Flerradiga kommentarer skrivs mellan "slash-stjärna" och "stjärna-slash": /* en kommentar... */ Namnge och deklarera variabler Du har arbetat med variabler i matematiken (bokstavsbeteckningar för tal) På samma sätt kan en variabel i JavaScript ha (lagra) olika värden. De tecken som kan användas i variabelnamnet är bokstäverna a-z och siffror (0-9) samt understrykningstecken ( _ ) Använd t.ex. inte blanktecken eller å, ä, ö i variabelnamn! I början av ett script brukar man deklarera de variabler man tänker använda. Man skriver då ordet var följt av variabelnamnen, t.ex. så här: var i,j; var x; var namn2, reg_nr; var vippa; I de flesta programmeringsspråk är variabeldeklarationen obligatorisk. I JavaScript är den frivillig. Variablerna tilldelas värden i koden. Tilldelning sker med likhetstecknet, så här: i = 7; j = -6; x = 3.14; namn2 = Bengt-Åke Karlsson ; reg_nr = ABC123 ; vippa = true; // heltal // heltal // flyttal // sträng // sträng // boolean Deklaration och tilldelning kan göras samtidigt, i en enda sats, så här: var i = 7; Likhetstecknet kallar vi i JavScript-, Java- och C++-sammanhang hellre tilldelningstecknet. Ove Lundgren DOMDHTML2009.doc
12 Variabler kan också tilldelas värden från andra variabler. Exempel: Med satsen c = a + b; får c värdet av summan av de tal som lagrats i a respektive b Satsen k = k + 1; gör att k ökar sitt värde med 1 (ett) Satsen k++; är en kortform för samma sak, det vill säga k ökar med 1 Datatyper Vi arbetar med fyra datatyper: Heltal, flyttal, strängar och boolean. Se avsnittet Variablerna tilldelas värden i koden ovan. Variablerna i och j ovan har tilldelats heltal. Variabeln x har tilldelas ett decimaltal, eller flyttal som man brukar säga i programmeringskretsar. Observera att decimaltecknet ska vara en punkt inte ett kommatecken! Variablerna namn2 och reg_nr har tilldelats strängar. En sträng är en följd av tecken (bokstäver, siffror eller andra tecken vilka som helst). En sträng ska omges av citationstecken. Se upp när du tilldelar tal till en variabel! Exempel: Med x = 3.14 blir x inte ett tal utan en sträng. Variabeln x kan då inte ingå i en räkneformel t.ex. Variabel vippa har tilldelats ett boolskt värde. Det finns bara två: true och false. Variablerna tilldelas värden från tangentbordet Variabler kan tilldelas värden från tangentbord, via inmatningsruta eller textfält. Exempel: namn2 = window.prompt("skriv ditt namn!", ""); Variabeln namn2 tilldelas den sträng som matas in i inmatningsrutan. reg_nr = document.mittfrm.mintxt.value; Variabeln reg_nr tilldelas den sträng som matas in i textfältet. Metoderna parseint( ) och parsefloat( ) Detta är två av JavaScripts fördefinierade metoder. Vi ska se hur de används: Det som står i inmatningsrutor och textfält är strängar. Antag att vi vill kunna tilldela en heltalsvariabel ett värde från tangentbordet. Då måste vi kunna omvandla en sträng till ett tal. För detta ändamål används metoden parseint( ) Exempel: i = parseint( window.prompt("skriv ett heltal!", "") ) ; Antag att du matar in 325 Metoden window.promp() returnerar strängen "325" Metoden parseint() omvandlar strängen "325" till talet 325. Variabeln i får alltså heltalsvärdet 325. Metoden parsefloat( ) omvandlar en sträng till ett flyttal. Exempel: s = document.mittfrm.mintxt.value; // Om s exempelvis har värdet "12.75" x = parsefloat( s ); // så kommer x att få värdet Ove Lundgren DOMDHTML2009.doc
13 Aritmetiska operatorer addition + subtraktion - multiplikation * division / modulus % (resten vid heltalsdivision) Sammanfoga strängar med strängar och strängar med tal Plustecknet har ytterligare en betydelse. Det används för att sammanfoga (konkatenera) strängar. Exempel: s1 = "Hej "; s2 = s1 + "Kalle"; Strängvariabeln s2 har efter att dessa satser utförts värdet "Hej Kalle" Exempel: t = 17; s2 = "Talet är " + t ; När en sträng konkateneras med ett tal blir resultatet - en sträng! s2 får alltså värdet "Talet är 17" Utskrift Med alert-metoden. Exempel: window.alert("hej!"); Utskrift i ett textfält. Exempel: document.mittfrm.mintxt.value = "HEJ"; (Fler möjligheter att få snyggare utskrifter kommer senare ) Selektion ( = val ) Exempel if (a > b) { sats; sats;... else { sats; sats;... Om det är sant (true) att a > b så utförs dessa satser annars utförs dessa satser Om det bara är en enda sats som ska utföras efter if (eller else)behövs inte krullparenteserna. Exempel: if (a > b) sats; else sats; Om ingenting ska utföres efter else tar man inte med else över huvud taget. Exempel: if (a > b) { sats; sats;... Relationsoperatorer Större än > Mindre än < Större än eller lika med >= Mindre än eller lika med <= Lika med == (Obs! dubbelt likhetstecken) Ej lika med!= Ove Lundgren DOMDHTML2009.doc
14 Logiska operatorer Ett uttryck som kan ha värdet true eller värdet false kallas ett logiskt uttryck (eller boolskt uttryck) Exempel: (a > b) är ett logiskt uttryck. Flera sådana uttryck kan sättas samman till ett logiskt uttryck med de logiska operatorerna && ("logiskt OCH") och ("logiskt ELLER") Exempel: (a > b ) && ( c > d ) (a > b ) ( c > d ) Hela uttrycket är sant om båda deluttrycken är sanna Hela uttrycket är sant om minst ett av deluttrycken är sant ( Pipe-tecknet,, hittar du långt ned till vänster på tangentbordet, på samma tangent som tecknen < och > ) Den logiska operatorn "icke" skrivs med ett utropstecken,! Denna operator ger motsatt värde hos en boolsk variabel. Exempel: vippa =!vippa ; //om vippa är true blir det nya värdet false och tvärtom. Iteration ( = upprepning) Följande konstruktion gör att satserna i blocket kommer att upprepas n gånger: for(var i = 0; i < n; i++) { sats; sats;... for-loopen används när man vet hur många gånger något ska upprepas. Ibland vill man att något ska upprepas så länge ett viss logiskt uttryck är sant. Då används while-loopen: while ( logiskt uttryck ) { sats; sats;... Egna metoder Det vanligaste är att JavaScript-kod återfinns i egendefinierade metoder som sedan anropas från en händelsehanterare. Egna metoder skriver man mellan -taggar i head-blocket. Man hittar på ett lämpligt namn på metoden. (Namngivningsreglerna är de samma som för variabeler.) Metodnamnet ska föregås av function och följas av parenteser. Sedan följer ett block inom "krullparenteser". Där skrivs vad metoden ska göra. Så här alltså: function minmetod() { sats; sats; Metoden anropas sedan med t.ex. onclick = " minmetod() ; " Ove Lundgren DOMDHTML2009.doc
15 En metod kan också förses med (en eller fler) parametrar. Vi tar ett exempel: function namnloop( s, n) { for(var i = 0 ; i < n ; i++) { document.write( s + "<br>" ); En sådan metod måste anropas med lämpliga argument. Om metoden anropas exempelvis så här onclick = " namnloop('lisa',3);" så kommer namnet Lisa att skrivas 3 gånger i ett nytt dokument. Metoder som returnerar värde Metoder som returnerar ett värde (funktionsvärde) kallas ofta funktioner. Vi tar ett exempel: function rektarea( a, b ) { var area = a * b; return area; Arean för en rektangel med sidorna a och b kommer att beräknas. Observera att det som funktionen ska" lämna ifrån sig" ska föregås av ordet return. Vi anropar metoden med lämplig argument. Exempel: Utskrift av "Arean är " + rektarea(4,5) ger resultatet Arean är 20 Exempel: Satsen area = rektarea(3,4); gör att variabeln area tilldelas värdet 12 De två typerna av metoder har lite olika benämningar i olika programmeringsspråk: Metod som ej returnerar värde Metod som returnerar värde JavaScript metod metod (ofta funktion) Java void metod metod C++ void funktion funktion Pascal procedur funktion Ove Lundgren DOMDHTML2009.doc
16 JavaScript-övningar Här är några övningar där du får tillämpa vad du lärt dig om JavaScript. Du får också utnyttja några metoder och variabler i objektmodellen som vi nämnt, men inte använt tidigare. Försök att lösa uppgifterna på egen hand. Lösningsförslag finns på efterföljande sidor. (Observera att det är lösningsförslag. Uppgifterna kan lösas på flera likvärdiga sätt ) JS1 Skriv html-kod för en enkel webbsida med bakgrundsfärg "silver". Lägg in ett formulär med en knapp. När man trycker på knappen ska bakgrunden bli röd. JS2 Som ovan men ersätt knappen med tre radioknappar. Beroende på vilken knapp som klickas ska bakgrundsfärgen bli röd, grön eller blå och den aktuella färgens namn ( red, green, blue ) ska visas på statusraden. JS3 Skapa ett formulär med tre textfält och en knapp. Man ska skriva in heltal i textfälten. När man trycker på knappen ska det tredje textfältet visa summan av talen i de övriga textfälten. JS4 Som ovan, men ersätt knappen med fyra radioknappar. Beroende på vilken knapp som klickas ska summan, differensen, produkten resp. kvoten beräknas och visas. JS5 Skapa ett formulär med två textfält och en knapp. I det första textfältet skriver man ett namn, i det andra ett heltal. Om man exempelvis skriver Kalle respektive talet 5 ska strängen Hejsan Kalle skrivas ut 5 gånger på en ny webbsida. JS6 Skriv html-kod för en webbsida med denna body: <body bgcolor="silver" onload= " window.setinterval( 'bildloop()', 500 ); "> <img src="katt.jpg" width="109" height="83" name="bilden"> Metoden bildloop() kommer att anropas var 500:e millisekund. Skriv metoden bildloop() så att bilden byts ut vid varje anrop. Använd minst två (gärna fler) bilder. JS7 Skriv html-kod för en webbsida som visar en knapp. När man klickar på knappen ska metoden window.open() anropas: window.open("minsida.html","mittfonster","width=200,height=200"); Det första argumentet i window.open( ) är en länk till den sida som ska visas i fönstret. Det andra argumentet är ett namn på det nya fönstret. Det tredje argumentet kan se ut så här: "toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes, scrollbars=yes,resizable=yes,width=200,height=200" Här anges alltså (med yes eller no) vilka egenskaper fönstret ska ha. Testa gärna! Allt skrivs på en enda rad. Inga blanktecken (mellanslag) får förekomma i argumenten. Ove Lundgren DOMDHTML2009.doc
17 Lösningsförslag <title> js1 </title> <form> <input type="button" value = "Tryck" onclick = " document.bgcolor='red'; " > </form> <title>js2</title> function farg(f) { document.bgcolor = f ; <form> <input type="radio" name = "färg" onclick = "farg('red');" > Röd <br> <input type="radio" name = "färg" onclick = "farg('green');" > Grön <br> <input type="radio" name = "färg" onclick = "farg('blue');" > Blå </form> <br> <title>js3</title> function rakna() { var x, y, summa; x = parseint( document.frm.t1.value ); y = parseint( document.frm.t2.value ); summa = x + y; document.frm.t3.value = "Summan är " + summa; <form name="frm"> <input type="text" name = "t1" ><br> <input type="text" name = "t2" ><br> <input type="text" name = "t3" ><br> <input type="button" value="tryck" onclick = "rakna();" > </form> Ove Lundgren DOMDHTML2009.doc
18 <title>js4</title> function rakna(t) { var x, y, r; x = parseint( document.frm.t1.value ); y = parseint( document.frm.t2.value ); if(t=='+'){r=x+y; document.frm.t3.value = "Summan är " + r; if(t=='-'){r=x-y; document.frm.t3.value = "Differensen är " + r; if(t=='*'){r=x*y; document.frm.t3.value = "Produkten är " + r; if(t=='/'){r=x/y; document.frm.t3.value = "Kvoten är " + r; <form name="frm"> <input type="text" name = "t1" ><br> <input type="text" name = "t2" ><br> <input type="text" name = "t3" ><br> <input type="radio" value = "aritm" onclick = "rakna('+');" >+<br> <input type="radio" value = "aritm" onclick = "rakna('-');" >-<br> <input type="radio" value = "aritm" onclick = "rakna('*');" >*<br> <input type="radio" value = "aritm" onclick = "rakna('/');" >/<br> </form> <title>js5</title> function namnloop( s, n) { for(var i = 0 ; i < n ; i++) { document.write( s + "<br>" ); <form name="frm"> <input type="text" name = "t1" ><br> <input type="text" name = "t2" ><br> <input type="button" value = "Tryck" onclick = " namnloop(document.frm.t1.value, parseint(document.frm.t2.value));"> </form> <title>js6</title> var i=0; function bildloop() { i++; if (i == 1) document.bilden.src = "Katt.jpg"; if (i == 2) document.bilden.src = "Lejon.jpg"; if (i==2) i=0; <body bgcolor="silver" onload= "window.setinterval( 'bildloop()', 500 );"> <img src="katt.jpg" width="109" height="83" name="bilden"> Ove Lundgren DOMDHTML2009.doc
19 <title> js7 </title> function OppnaFonster() { window.open("js20.html","mittfonster","width=200,height=200"); <body bgcolor="lightblue" > <h1>testar script</h1> <FORM> <INPUT TYPE="BUTTON" NAME="knapp1" VALUE="Tryck" onclick ="OppnaFonster();"> </FORM> Testa med följande stäng som tredje argument i window.open() "toolbar=yes,location=yes,directories=yes,status=yes,menubar=yes, scrollbars=yes,resizable=yes,width=200,height=200" Fortsätt med arbetshäftet Dynamisk HTML 2: DOM och mer om JavaScript Ur innehållet: DOM (document object model) Referera till objekt med id Förändra textinnehåll på en webbsida Förändra style-egenskaper på en webbsida Fler händelsehanterare Egna namn på pekare Synlig osynlig Animering JavaScripts coreobjekt Ove Lundgren DOMDHTML2009.doc
JAVASCRIPT. Beteende
JAVASCRIPT Beteende OVERVIEW HTML Formulär JavaScript Syntax Events DOM Validering av fomulär WEBBPROGRAMMERING PÅ KLIENTSIDAN Skriptspråk som körs på klientsidan (klientskript) Koden exekveras i webbläsaren
Läs merProgrammeringsteknik med C och Matlab
Programmeringsteknik med C och Matlab Kapitel 2: C-programmeringens grunder Henrik Björklund Umeå universitet Björklund (UmU) Programmeringsteknik 1 / 32 Mer organisatoriskt Imorgon: Datorintro i lab Logga
Läs merJavaScript. Innehåll. Historia. Document object model DHTML. Varför Javascript?
Innehåll JavaScript En introduktion till skriptspråket JavaScript och till DOM Scripting Introduktion till JavaScript och DOM JavaScript Syntax DOM och DOM Scripting Händelsehantering och CSS Historia
Läs merÖvningar i JavaScript del 2
Övningar i JavaScript del 2 Genm dessa övningar frtsätter intrduktinen av JavaScript. Vi tar nu upp if-satser ch lite mer m funktiner. Vi kmmer ckså in på tillämpningar sm att byta en bild på webbsidan
Läs merEn snabb titt på XML LEKTION 6
LEKTION 6 En snabb titt på XML Bokstaven x i Ajax står för XML, ett mycket användbart beskrivningsspråk som gör det möjligt för Ajax-tillämpningar att hantera komplex strukturerad information. I den här
Läs merDagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program
Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik VT05 2 Repetition Repetition - Programmering i
Läs merProgrammering A C# VT 2010. Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08
Programmering A C# VT 2010 Ett kompendie över Programmering A (50p) i c# Stefan Fredriksson 2010 02 08 Innehåll Hjälp och referenser... 3 Kap 1 Introduktion... 3 Steg för steg... 3 Kapitel 2 Variabler...
Läs merInnehåll. JavaScript - Grundkurs. Vad är JavaScript? Vad är JavaScript? Vad behövs? Lite historia
JavaScript - Grundkurs Mahmud Al Hakim mahmud@dynamicos.se www.dynamicos.se www.webbacademy.se Innehåll Introduktion till JavaScript JavaScript i HTML-dokument Lite om DOM (Document Object Model) Händelser
Läs merIntroduk+on +ll programmering i JavaScript
Föreläsning i webbdesign Introduk+on +ll programmering i JavaScript Rune Körnefors Medieteknik 1 2012 Rune Körnefors rune.kornefors@lnu.se Språk Naturliga språk Mänsklig kommunika+on T.ex. Svenska, engelska,
Läs merSMD 134 Objektorienterad programmering
SMD 134 Objektorienterad programmering Dagens agenda: Typer i Java: primitiva datatyperna, referenstyper Variabler och variabeltilldelningar med primitiva typer Konstanter av de olika typerna. Heltalsräkning
Läs merObjektorienterad programmering D2
Objektorienterad programmering D2 Laboration nr 2. Syfte Att få förståelse för de grundläggande objektorienterade begreppen. Redovisning Källkoden för uppgifterna skall skickas in via Fire. För senaste
Läs merIntroduktion till PHP
PHP - Grund Copyright 2016 Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se Introduktion till PHP PHP = PHP: Hypertext Preprocessor PHP är ett programmeringsspråk. PHP är ett skriptspråk som körs
Läs merDOM (Document Object Model) är modellen efter vilken en webbläsaren är uppbyggd. Alla objekt/element i webbläsaren finns hierarkiskt ordnade i DOM.
JavaScript del1 Syftet med detta häfte är att sammanfatta det viktigaste i JavaScript så kort och koncist som möjligt men ändå tillräckligt omfattande för att ge god kännedom om en av de vanligaste teknikerna
Läs merFöreläsning 1 & 2 INTRODUKTION
Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga
Läs merProva på-laboration i PHP Johan Sjöholm johsj@ida.liu.se Institutionen för datavetenskap, Linköpings universitet 2009-08-09
Prova på-laboration i PHP Johan Sjöholm johsj@ida.liu.se Institutionen för datavetenskap, Linköpings universitet 2009-08-09 1. Introduktion till webbprogrammering Webbprogrammering består av ett antal
Läs merTentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012
1 of 6 Örebro universitet Akademin för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen
Läs merAnvändarhandledning Version 1.2
Användarhandledning Version 1.2 Innehåll Bakgrund... 2 Börja programmera i Xtat... 3 Allmänna tips... 3 Grunderna... 3 Kommentarer i språket... 4 Variabler... 4 Matematik... 5 Arrayer... 5 på skärmen...
Läs merProgrammering A. Johan Eliasson johane@cs.umu.se
Programmering A Johan Eliasson johane@cs.umu.se 1 Jag Undervisar mest grundläggande programmering på Institutionen för datavetensakap Applikationsutveckling för iphone Applikationsutveckling i Java Datastrukturer
Läs merVem är vem på kursen. Objektorienterad programvaruutveckling GU (DIT011) Kursbok Cay Horstmann: Big Java 3rd edition.
Institutionen för Datavetenskap Göteborgs universitet HT2009 DIT011 Vem är vem på kursen Objektorienterad programvaruutveckling GU (DIT011) Kursansvarig : Katarina Blom, tel 772 10 60 Rum: 6126 (E-huset)
Läs merÖvningar Dag 2 En första klass
Kurs i C++ Sid 1 (5) Övningar Dag 2 En första klass Denna övning går ut på att steg för steg bygga upp en klass och skapa objekt. Vi kommer att utgå från en sammansatt datatyp i en struct och parallellt
Läs merGrundläggande programmering med C# 7,5 högskolepoäng
Grundläggande programmering med C# 7,5 högskolepoäng Provmoment: TEN1 Ladokkod: NGC011 Tentamen ges för: Omtentamen DE13, IMIT13 och SYST13 samt öppen för alla (Ifylles av student) (Ifylles av student)
Läs merProgrammering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p
Programmering i C++ En manual för kursen Datavetenskaplig introduktionskurs 5p Skriven av Michael Andersson Introduktion Programmering I högnivåspråk fokuserar på själv problemet (algoritmen) istället
Läs merTDIU01 - Programmering i C++, grundkurs
TDIU01 - Programmering i C++, grundkurs Sammanfattning period 1 Eric Elfving Institutionen för datavetenskap 1 oktober 2013 Översikt Ett C++-programs uppbyggnad Variabler Datatyper Satser Uttryck Funktioner
Läs merDagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program
Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik för ingenjörer, VT06 2 Repetition Repetition -
Läs merProgrammera i C Varför programmera i C när det finns språk som Simula och Pascal??
Programmera i C Varför programmera i C när det finns språk som Simula och Pascal?? C är ett språk på relativt låg nivå vilket gör det möjligt att konstruera effektiva kompilatorer, samt att komma nära
Läs merDatatyper och kontrollstrukturer. Skansholm: Kapitel 2) De åtta primitiva typerna. Typ Innehåll Defaultvärde Storlek
De åtta primitiva typerna Java, datatyper, kontrollstrukturer Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Typ Innehåll Defaultvärde Storlek boolean true, false false 1 bit char Tecken \u000
Läs merTentamen OOP 2015-03-14
Tentamen OOP 2015-03-14 Anvisningar Fråga 1 och 2 besvaras på det särskilt utdelade formuläret. Du får gärna skriva på bägge sidorna av svarsbladen, men påbörja varje uppgift på ett nytt blad. Vid inlämning
Läs merInledande programmering med C# (1DV402) 27+15=42 1 (22)
27+15=42 1 (22) Variabler Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll
Läs mer1 Datorn som miniräknare. 1.1 Räkneoperationer. 1.2 Variabler
1 Datorn som miniräknare I detta avsnitt tas upp hur man kan skriva program som utför enkla räkneoperationer och skriver resultat på skärmen. Syftet är i huvudsak att se hur flera satser kan bygga upp
Läs merGrunderna i stegkodsprogrammering
Kapitel 1 Grunderna i stegkodsprogrammering Följande bilaga innehåller grunderna i stegkodsprogrammering i den form som används under kursen. Vi kommer att kort diskutera olika datatyper, villkor, operationer
Läs mer1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet
1 Texthantering I detta avsnitt tas det upp två sätt att arbeta med text i C++ program. Det första sättet som behandlas är hanteringen av textfält. Texter i C++ består utav en serie med enstaka tecken
Läs merTentamen DE12, IMIT12, SYST12, ITEK11 (även öppen för övriga)
Grundläggande programmering med C# Provmoment: Ladokkod: Tentamen ges för: 7,5 högskolepoäng TEN1 NGC011 Tentamen DE12, IMIT12, SYST12, ITEK11 (även öppen för övriga) (Ifylles av student) (Ifylles av student)
Läs merObjektorienterad programmering i Java
Objektorienterad programmering i Java Föreläsning 4 Täcker i stort sett kapitel 6 i kursboken Java Software Solutions 1 Läsanvisningar Den här föreläsningen är uppbyggd som en fortsättning av exemplet
Läs merFör att skriva data till skärmen ( konsolen) används objektet System.out tillsammans med metoden println eller print.
1 Inmatning och utskrift Inmatning från tangentbord och utskrift till skärm sker i java med hjälp av objekten System.out och System.in. Dessa båda objekt är exempel på strömmar. En ström är en typ som
Läs mer(Man brukar säga att) Java är... Denna föreläsning. Kompilering av Java. Historik: Java. enkelt. baserat på C/C++ Allmänt om Java
(Man brukar säga att) Java är... Denna föreläsning Allmänt om Java Javas datatyper, arrayer, referenssemantik Klasser Strängar enkelt baserat på C/C++ objekt-orienterat från början dynamiskt utbyggbart
Läs mer1 Funktioner och procedurell abstraktion
1 Funktioner och procedurell abstraktion Det som gör programkonstruktion hanterlig och övergripbar och överhuvudtaget genomförbar är möjligheten att dela upp program i olika avsnitt, i underprogram. Vår
Läs merKlassdeklaration. Metoddeklaration. Parameteröverföring
Syntax: Class Declaration Modifier Class Body Basic Class Member Klassdeklaration class Class Member Field Declaration Constructor Declaration Method Declaration Identifier Class Associations Motsvarar
Läs merOOP Objekt-orienterad programmering
OOP F6:1 OOP Objekt-orienterad programmering Föreläsning 6 Mer om klasser och objekt Hantera många objekt ArrayList tostring() metoden this Vi vill ofta hantera många objekt i ett program: OOP F6:2 public
Läs merIdag. Javas datatyper, arrayer, referenssemantik. Arv, polymorfi, typregler, typkonvertering. Tänker inte säga nåt om det som är likadant som i C.
Idag Javas datatyper, arrayer, referenssemantik Klasser Arv, polymorfi, typregler, typkonvertering Strängar Tänker inte säga nåt om det som är likadant som i C. Objectorienterad programmering Sida 1 Ett
Läs merUppgift (poäng) 1 (2) 2 (3) 3 (4) 4 (4) 5 (3) 6 (4) 7 (6) 8 (6) 9 (8) Summa
Lena Kallin Westin 2005-08-22 Institutionen för datavetenskap Umeå universitet TENTAMEN Uppgift (poäng) 1 (2) 2 (3) 3 (4) 4 (4) 5 (3) 6 (4) 7 (6) 8 (6) 9 (8) Summa Inlämnad Poäng Kurs : Programmeringsteknisk
Läs merFöreläsning 4: Poster
Föreläsning 4: Poster Följande är genomgånget: type Person_Type is Namn : String(30); Skonr : Float; Kon : Boolean; Diskussion runt detta med olika typer m.m. Har tagit upp vilka operationer man kan göra
Läs merBeräkningsvetenskap föreläsning 2
Beräkningsvetenskap föreläsning 2 19/01 2010 - Per Wahlund if-satser if x > 0 y = 2 + log(x); else y = -1 If-satsen skall alltid ha ett villkor, samt en då det som skall hända är skrivet. Mellan dessa
Läs merAtt göra spel med Game Maker. Rum. Grundläggande delar. Gamemaker, dagens föreläsning. Programmeringsmodell
Gamemaker, dagens föreläsning Vad innehåller Gamemaker? Rum Objekt Händelser Aktioner Sprites Ljud Variabler och uttryck Live exempel: Början på Pac Man Att göra spel med Game Maker Programmeringsmodell
Läs merFöreläsning 5 (6) Metoder. Metoder Deklarera. Metoder. Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc
Föreläsning 5 (6) Metoder Metoder Parametrar Returvärden Överlagring Konstruktorer Statiska metoder tostring() metoden javadoc Metoder Deklarera public void setnamn(string n) Åtkomstmodifierare Returtyp
Läs merObjektorienterad programmering i Java I. Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6
Laboration 2 Objektorienterad programmering i Java I Uppgifter: 2 Beräknad tid: 5-8 timmar (OBS! Endast ett labbtillfälle) Att läsa: kapitel 5 6 Syfte: Att kunna använda sig av olika villkors- och kontrollflödeskonstruktioner
Läs merGrunderna i SQL del 1
Grunderna i SQL del 1 1. SELECT-frågor 2. SELECT 3. WHERE 4. ORDER BY 5. Inre join 6. Yttre join 7. Andra typer av join 8. Union 9. Aggregatfunktioner 10. Gruppera och summera Kap. 3 Kap. 4 Kap. 5 utom
Läs merDE FYRA RÄKNESÄTTEN (SID. 11) MA1C: AVRUNDNING
DE FYRA RÄKNESÄTTEN (SID. 11) 1. Benämn med korrekt terminologi talen som: adderas. subtraheras. multipliceras. divideras.. Addera 10 och. Dividera sedan med. Subtrahera 10 och. Multiplicera sedan med..
Läs merTextsträngar från/till skärm eller fil
Textsträngar från/till skärm eller fil Textsträngar [Kapitel 8.1] In- och utmatning till skärm [Kapitel 8.2] Rekursion Gränssnitt Felhantering In- och utmatning till fil Histogram 2010-10-25 Datorlära,
Läs merJavaScript. DOM Scripting
JavaScript DOM Scripting Vad är Document object Model (DOM)? En standardiserad modell där man ser en webbsida och dess innehåll som objekt document.getelementsbytagname( p ); document.getelementbyid( mittid
Läs merFöreläsning 6: Introduktion av listor
Föreläsning 6: Introduktion av listor Med hjälp av pekare kan man bygga upp datastrukturer på olika sätt. Bland annat kan man bygga upp listor bestående av någon typ av data. Begreppet lista bör förklaras.
Läs merFöreläsning 3-4 Innehåll. Diskutera. Metod. Programexempel med metod
Föreläsning 3-4 Innehåll Diskutera Vad gör programmet programmet? Föreslå vilka satser vi kan bryta ut till en egen metod. Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer
Läs merFöreläsning 3.1: Datastrukturer, en översikt
Föreläsning.: Datastrukturer, en översikt Hittills har vi i kursen lagt mycket fokus på algoritmiskt tänkande. Vi har inte egentligen ägna så mycket uppmärksamhet åt det andra som datorprogram också består,
Läs merApplets med komponenter
5 Applets med komponenter Knappar Om gränssnitt (interface) Händelser Måla om appletytan Etiketter och textrutor Förvandla strängar till tal Aritmetik Omvandla datatyper med cast Felhantering Kap 5: Sid
Läs merTentamen i Programmering grundkurs och Programmering C
1 of 7 Örebro universitet Institutionen för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen
Läs merProgrammering med Java. Grunderna. Programspråket Java. Programmering med Java. Källkodsexempel. Java API-exempel In- och utmatning.
Programmering med Java Programmering med Java Programspråket Java Källkodsexempel Källkod Java API-exempel In- och utmatning Grunderna Ann Pan panda@nada.kth.se Rum 1445, plan 4 på Nada 08-7909690 Game.java
Läs merJava, klasser, objekt (Skansholm: Kapitel 2)
Java, klasser, objekt (Skansholm: Kapitel 2) Uppsala Universitet 11 mars 2005 Objectorienterad programmering Sida 1 Vad är en klass? En klass är ett sätt att beskriva en mängd objekt och deras gemensamma
Läs merBankkonto - övning. Övning 2 Skriv en metod, geträntan, som returnerar räntan.
Bankkonto - övning Övningar att göra efter lärardemostration. Filen bankkonto.zip innehåller ett projekt med klassen Bankkonto. Zippa upp denna fil och öppna projektet i BlueJ och skriv vidare på klassen
Läs merLösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Omtentamen i Programmering C, 5p, fristående, kväll, 040110.
1(8) ÖREBRO UNIVERSITET INSTITUTIONEN FÖR TEKNIK Lösningar till tentauppgifterna sätts ut på kurssidan på nätet idag kl 19. Denna tenta kommer att vara färdigrättad On 14/1-04 och kan då hämtas på mitt
Läs merFöreläsning 3-4 Innehåll
Föreläsning 3-4 Innehåll Skriva egna metoder Logiska uttryck Algoritm för att beräkna min och max Vektorer Datavetenskap (LTH) Föreläsning 3-4 HT 2017 1 / 36 Diskutera Vad gör programmet programmet? Föreslå
Läs merPROGRAMMERING 2 GRUNDLÄGGANDE SEMANTIK 4
Modul 2 Byggstenar PROGRAMMERING 2 GRUNDLÄGGANDE SEMANTIK 4 Byggstenar 4 Nyckelord 4 Tecken 4 Syntax 5 Standardbibliotek 5 Vårt första program 5 Variabler 6 Konstanter 9 Operatorer 9 Övningar 9 Mer operatorer
Läs merFöreläsning 2 Programmeringsteknik och C DD1316. Mikael Djurfeldt
Föreläsning 2 Programmeringsteknik och C DD1316 Mikael Djurfeldt Föreläsning 2 Programmeringsteknik och C Python introduktion Utskrift Inläsning Variabler Datatyp Aritmetiska operatorer Omvandling
Läs merPåminnelse: en datatyp för bilder. Programmering. En datatyp för bilder. Spegelbild. hh.se/db2004
Programmering hh.se/db2004 Föreläsning 10: Objektorienterad programmering - datatyper Verónica Gaspes www2.hh.se/staff/vero www2.hh.se/staff/vero/programmering Påminnelse: en datatyp för bilder Vad är
Läs merFöreläsning 2 Objektorienterad programmering DD1332. Typomvandling
metoder Föreläsning 2 Objektorienterad programmering DD1332 Array [modifierare] String metodnamn (String parameter) Returtyp (utdata typ) i detta fall String Indata typ i detta fall String 1 De får man
Läs merFöreläsning 2. Variabler, tilldelning och kodblock{} if-satsen Logiska operatorer Andra operatorer Att programmera
Föreläsning 2 Variabler, tilldelning och kodblock if-satsen Logiska operatorer Andra operatorer Att programmera Variabler Det är i variabler som all data (information) lagras. Genom att ändra värde på
Läs merAtt förstå hur man konstruerar modulära program Att kunna skapa nya funktioner Att förstå hur data skickas mellan funktioner
Lektion 4, del 1, kapitel 10 Funktioner i JavaScript Inlärningsmål Att förstå hur man konstruerar modulära program Att kunna skapa nya funktioner Att förstå hur data skickas mellan funktioner Introduktion
Läs merÖvning 1 Vi börjar med en vanlig html-fil där html används för både innehåll och utseende:
Uppsala universitet Institutionen för utbildning, kultur och medier IKT A HT 2009 Monica Langerth Zetterman 2009-09-23 Testa stilmallar Övning 1 Vi börjar med en vanlig html-fil där html används för både
Läs merÖvningar i JavaScript del 7
Övningar i JavaScript del 7 I denna labratin återanvänder vi bilderna på frukter, sm vi haft i ett par tidigare labratiner. Denna gång ska vi lägga till visuella effekter då en frukt väljs. Klickar man
Läs merObjektsamlingar i Java
1 (6) Objektsamlingar i Java Objektorienterad programmering 3 Syfte Att ge träning i att använda objektsamlingar i Java. Mål Efter övningen skall du kunna använda objektsamlingsklasserna ArrayList och
Läs merLabb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic
Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt
Läs merTENTAMEN. Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg. VT-13 Datum: 13-06-05 Tid: kl 16.00-20.
Umeå Universitet Datavetenskap Anders Broberg 130605 TENTAMEN Kurs: Objektorienterad programmeringsmetodik 5DV133 Ansvarig lärare: Anders Broberg VT-13 Datum: 13-06-05 Tid: kl 16.00-20.00 Namn: Personnummer:
Läs merÖvning2. Variabler. Data typer
Vahid 28 okt 2002 prgk02 Övning2 -Repetition -Variabler -Primitiva typer (+ boolean) -Operatörer +, ++, --, -Typ konvertering -Wrapper klasser -Jämförelse operatörer,(==, =, ,!=,!) -String hur man
Läs merÖversikt över Visual Basic
Översikt över Visual Basic Om denna översikt Denna översikt ger en kort introduktion till de viktigaste delarna i programspråket Visual Basic 6.0. På alla ställen där det beskrivs hur man skriver kod gäller
Läs merOperatorer Tilldelning Kodblock { } if satsen Logiska uttryck Att programmera
Föreläsning 2 Operatorer Tilldelning Kodblock if satsen Logiska uttryck Att programmera En operator tar ett eller två data och producerar ett svar. Typexemplet är +. Den tar t.ex två heltal och producerar
Läs merHjälpmedel för kompilatorkonstruktion, DVB004
Hjälpmedel för kompilatorkonstruktion, DVB004 Version 4.2 021104 Göran Fries 031104 GF Kompilatorn kan lämpligen konstrueras i tre ganska fristående pass (p1,p2,p3). Första passet gör en lexikalisk analys,
Läs merTentamen på kursen DA7351, Programmering 1. 051102, kl 08.15-12.15. Malmö högskola Teknik och samhälle. DA7351, Programmering 1 1 051102
Tentamen på kursen DA7351, Programmering 1 051102, kl 08.15-12.15 Tillåtna hjälpmedel: Valfri bok om Java. Vid bedömning av lösningarna tas hänsyn till om dessa uppfyller de krav på programkvalitet (strukturering,
Läs merKompilering och exekvering. Föreläsning 1 Objektorienterad programmering DD1332. En kompilerbar och körbar java-kod. Kompilering och exekvering
Föreläsning 1 Objektorienterad programmering DD1332 Introduktion till Java Kompilering, exekvering, variabler, styrstrukturer Kompilering och exekvering Ett program måste översättas till datorns språk
Läs merEDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.
EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.aelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade
Läs mer2.4. Teckensträngar och logiska uttryck
2.4. Teckensträngar och logiska uttryck I Fortran sparar man text i variabler av typen CHARACTER. För varje tecken reserveras normalt 1 byte i minnet. För att deklarera en teckenvariabel TEXT och samtidigt
Läs merTentamen i. för D1 m fl, även distanskursen. lördag 19 januari 2013
1 of 7 Örebro universitet Institutionen för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen
Läs merGrundläggande programmering
1 Grundläggande programmering Javaprogram Talvariabler Selektioner Teckenvariabler Strängar Iterationer Sammanfattning Övningar Kap 1: Sid 2 Observera! För övningarna i detta kapitel: Skapa en mapp med
Läs merLösningar till uppgifterna sätts ut på kurssidan på nätet idag kl 13.00. Omtentamen i Programmering C, 5p, A1, D1, E1, Fri, Pr1, Te/Ek1, 040607.
1(8) ÖREBRO UNIVERSITET INSTITUTIONEN FÖR TEKNIK Lösningar till uppgifterna sätts ut på kurssidan på nätet idag kl 13.00. Denna tenta kommer att vara färdigrättad On 9/6 och kan då hämtas på mitt tjänsterum,
Läs mer"if"-satsen. Inledande programmering med C# (1DV402)
"if"-satsen Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll i verket if-satsen
Läs merFöreläsning 5-6 Innehåll. Exempel på program med objekt. Exempel: kvadratobjekt. Objekt. Skapa och använda objekt Skriva egna klasser
Föreläsning 5-6 Innehåll Exempel på program med objekt Skapa och använda objekt Skriva egna klasser public class DrawSquare { public static void main(string[] args) { SimpleWindow w = new SimpleWindow(600,
Läs merParameteröverföring. Exempel. Exempel. Metodkropp
Exempel atriangle.changesize (100, 50); // OK atriangle.changesize (100); // fel antal atriangle.changesize ( 1, 50); // fel datatyp char c = atriangle.getarea (); // fel datatyp Parameteröverföring I
Läs merIntroduktion till Matlab
CTH/GU 2015/2016 Matematiska vetenskaper Introduktion till Matlab 1 Inledning Matlab är både en interaktiv matematikmiljö och ett programspråk, som används på många tekniska högskolor och universitet runt
Läs merAlgoritmanalys. Genomsnittligen behövs n/2 jämförelser vilket är proportionellt mot n, vi säger att vi har en O(n) algoritm.
Algoritmanalys Analys av algoritmer används för att uppskatta effektivitet. Om vi t. ex. har n stycken tal lagrat i en array och vi vill linjärsöka i denna. Det betyder att vi måste leta i arrayen tills
Läs merFör att skriva CSS-kod använder man sig av olika kommandon. Ett exempel på hur man kan skriva kod för att ändra textfärg kan vara:
Hemsida CSS Introduktion till Cascading Style Sheets (CSS) Detta är en mycket kort genomgång av CSS med exempel på hur sådan kod ska läsas och hur den kan användas på IdrottOnline-sidor. Är man ute efter
Läs merAtt använda pekare i. C-kod
Att använda pekare i C-kod (Bör användas av de som känner sig lite hemma med C-programmering!) Rev 1, 2005-11-23 av Ted Wolfram www.wolfram.se Syfte: Man kan tycka att det är komplicerat att använda pekare
Läs merBjörn Abelli Programmeringens grunder med exempel i C#
Björn Abelli Programmeringens grunder med exempel i C# Övningshäfte (bearbetning pågår) Senaste uppdatering: 2004-12-12 I denna version finns övningar för de mest centrala avsnitten. Häftet kommer att
Läs merTwincat: PLC Control
Dokument Förklaring Dat. Revision KI-221-003-003 Kom igång med trukturerad Text 080402 1.0 Twincat: PLC Control Kom igång med Strukturerad Text (ST) programmering 1. Kod exempel. a. Exemplen som demonstreras
Läs merF5 Selektion och iteration. ID1004 Objektorienterad programmering Fredrik Kilander
F5 Selektion och iteration ID1004 Objektorienterad programmering Fredrik Kilander fki@kth.se Boolska uttryck Boolska uttryck använder sig av jämförelseoperatorer < > = ==!= Resultatets datatyp är boolean
Läs merFöreläsning 5-6 Innehåll
Föreläsning 5-6 Innehåll Skapa och använda objekt Skriva egna klasser Datavetenskap (LTH) Föreläsning 5-6 HT 2017 1 / 32 Exempel på program med objekt public class DrawSquare { public static void main(string[]
Läs merSätt att skriva ut binärträd
Tilpro Övning 3 På programmet idag: Genomgång av Hemtalet samt rättning Begreppet Stabil sortering Hur man kodar olika sorteringsvilkor Inkapsling av data Länkade listor Användning av stackar och köer
Läs merVariabler och konstanter
Variabler och konstanter Deklareras automatisk när man stoppar in data i dem. X = 7 Y = A Z = Kalle Definieras av att de har: ett namn (X) en datatyp (Integer) ett värde (t.ex. 7) Lagras i datorns minne!
Läs merIT för personligt arbete F6
IT för personligt arbete F6 Datalogi del 2 DSV Peter Mozelius Datarepresentation Det som lagras i en dator representeras i grunden som 1:or och 0:or Dessa binära värden kan sedan tolkas på olika sätt i
Läs merAlla filer som bearbetar PHP script ska avslutas med ändelsen.php, exempelvis ska en indexsida till en hemsida heta index.php
Introlektion PHP är ett av de enklare språken att lära sig just pga. dess dynamiska struktur. Det används för att bygga upp båda stora och mindre system. Några vanliga system som använder sig av PHP är
Läs mer5 Grundläggande in- och utmatning
5 Grundläggande in- och utmatning För att användaren skall kunna kommunicera med programmet krävs att man inkluderar ett eller flera bibliotek med rutiner. I Ada finns det ett antal paket som gör detta
Läs merFöreläsning 13 och 14: Binära träd
Föreläsning 13 och 14: Binära träd o Binärträd och allmänna träd o Rekursiva tankar för binärträd o Binära sökträd Binärträd och allmänna träd Stack och kö är två viktiga datastrukturer man kan bygga av
Läs merProgrammering C: Tentamen of 5 Prioritet och associativitet hos operatorerna i C De viktigaste operatorerna: Prioritet Kategori Operator
Programmering C: Tentamen 2008-05-31 1 of 5 Örebro universitet Institutionen för teknik Thomas Padron-McCarthy (Thomas.Padron-McCarthy@tech.oru.se) Tentamen i Programmering grundkurs och Programmering
Läs merKort om klasser och objekt En introduktion till GUI-programmering i Java
Kort om klasser och objekt En introduktion till GUI-programmering i Java Klasser En klass är en mall för hur man ska beskriva på något. Antag att vi har en klass, Bil. Den klassen innehåller en lista på
Läs mer