Danny Bahl skrev:
> Nu har jeg fjernet ' men det virker stadig ikke ... jeg er
> grædefærdig!
Tricket er at du skal fjerne anførselstegnene det ene sted (der
hvor du erklærer funktionen) - ikke begge.
> function visElement(stilling07) {
> if
> document.getElementById(stilling07).style.display=="block"){
> document.getElementById(stilling07).style.display="none";
> }
> else {
> document.getElementById(stilling07).style.display="block";}
> }
Funktionserklæringen herover er god nok - selvom "stilling07" måske
ikke er så velvalgt et variabelnavn. I en erklæringsblok som den
herover kan du bruge næsten lige det variabelnavn du har lyst til
(uden anførselstegn) - bare husk at det navn du bruger i
funktionserklæringen også skal være det du bruger i "kroppen" af
funktionen. Et par eksempler med samme funktion, bare med et andet
variabelnavn:
// 1:
function visElement(id) {
if document.getElementById(id).style.display=="block"){
document.getElementById(id).style.display="none";
}
else {
document.getElementById(id).style.display="block";}
}
// 2:
function visElement(stilling) {
if document.getElementById(stilling).style.display=="block"){
document.getElementById(stilling).style.display="none";
}
else {
document.getElementById(stilling).style.display="block";}
}
Første linje er ret væsentlig at forstå. Vi tager den lige skridt
for skridt (med udgangspunkt i modifikation 1:
function visElement(id) {
A: function => Et reserveret ord der fortæller at vi indleder en
funktionserklæring.
B: visElement => Navnet på funktionen. Det er det navn der skal
bruges når man senere skal anvende funktionen
C: ( ... ) => Parenteser anvendes for at angive de argumenter
funktionen tager. Hvis den ikke tager nogen argumenter, skriver man
bare () - fx visElement(). Hvis der er flere argumenter, adskilles
de med komma, fx visElement(element, size)
D: id => En variabel der bruges til at referere det argument man
kalder funktionen med. Variablen bliver tildelt en værdi når man
kalder funktionen, og denne værdi kan så aflæses "inde" i
funktionen når man refererer til variablen.
E: { ... } => Blokparanteser markerer hvor selve indholdet af
funktionen starter og slutter.
> <a href="#" onclick="visElement(stilling07);return false;">Vis
> element</a>
Her går det galt. "stilling07" er en variabel, men det du har brug
for er en værdi. Sætter du enkeltanførselstegn om værdien, skulle
det køre: <a href="#" onclick="visElement('stilling07');return
false;">Vis element</a>
(Det vil dog stadig være en ide at bruge et andet variabelnavn i
den første blok - så man ikke kommer til at tage fejl af stilling07
og 'stilling07').
Overvej at kigge på
<
http://www.w3schools.com/js/default.asp> - og måske specielt
<
http://www.w3schools.com/js/js_functions.asp>, der giver en
grundig indføring i javascriptfunktioner, inkl. en interaktiv
"legeplads" hvor man kan prøve sig frem.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på
http://usenet.dk/netikette/citatteknik.html