Globale linker

JavaScript

Funksjoner

I stedet for å skrive JavaScriptet i HTML-koden og få browseren til å utføre den så fort scriptet er lest, kan det hende at vi vil at JavaScriptet skal utføres ved en spesiell begivenhet.

For eksempel, hvis vi har laget et JavaScript som forandrer bakgrunnsfargen på siden, og vi vil at dette skal skje når brukeren klikker på en knapp, må vi på en eller annen måte fortelle browseren at scriptet ikke skal kjøres når det er lest av browseren, men at det skal ligge i minnet og vente til brukeren utfører den ønskede handlingen.

Vi kan hindre at browseren utfører scriptet med en gang det er lest ved å skrive scriptet som en funksjon.

Javascript-kode som er skrevet inn i en funksjon vil ikke bli utført av browseren før vi ber om det.

Et eksempel:

<html>
<head>
<script type="text/javascript">
<!--
function minFunksjon()
{
alert("Velkommen til min side");
}
//-->
< /script>
</head>

<body>
<form name="mittSkjema">
<input type="button" value="Klikk meg" onClick="minFunksjon();">
</form>
</body>
</html>

Klikk på knappen for å se hva eksempelet gjør:

Hvis kodelinjen: alert("Velkommen til min side"); ikke hadde blitt skrevet inne i en funksjon, vil den blitt utført så fort linjen var lastet inn i browseren.

Men siden jeg skrev den i en funkson, ble den ikke utført før du klikket på knappen.

Vi kaller opp funksjonen med denne koden:

<input type="button" value="Klikk meg" onClick="minFunksjon();">

Som du ser, har jeg plassert knappen i et skjema, og lagt til event'et onClick="minFunksjon();" som et attributt til knappen.

Neste side gir en beskrivelse av forskjellige events som vi kan bruke for å sette igang funksjoner.

Den generelle syntaxen for en funskjon er:

function funksjonNavn (variable1, variable2,..., variableX)
{
// Her kommer selve JavaScript koden for funksjonen
}

Krøllparentesene { og } markerer begynnelsen og slutten på funksjonen.

Igjen, en typisk feil når man skriver JavaScript er å glemme at store og små bokstaver ikke er det samme. Ordet function må skrives akkurat som function. Function eller FUNCTION vil resultere i feil.

Husk også at myfunction() ikke er det samme som Myfunction(), MYFUNCTION() eller MyFunction().

<< Forrige sideNeste side >>