Frameset output
Hvordan anvendes et framesæt som output
Man skal opstille et framesæt, hvor man kan have den kode der afvikles i en frame (dette vil normalt ligge i en selvstændig HTML-fil).
Man kan så opstille en eller flere andre frames til at skrive ud i - det kommer an på hvad man skal lave, og hvilket udseende man ønsker
Eksempel på anvendelse af framesæt som output
Koden har en frame med nogle knapper, hvor man kan lægge noget indhold i en anden frame, og man kan slette en frame. Der er også muligheden for at styre et ur i en 3. frame.
Framesættet er sat op i følgende kode:
<head> <title>Illustration af frames</title> </head> <html> <!-- Lav et frameset med to vandrette rammer, menuen i toppen og indholdet i bunden --> <frameset rows="25%,75%"> <!-- Lav toppen til et nyt framesæt, delt lodret --> <frameset cols="*,120"> <frame name="top" src="out4top.html"> <frame noresize name="klokken" src=""> </frameset> <frame noresize name="bund" src=""> <!-- Skriv en besked, hvis dokumentet åbnes i en ældre browser --> <!-- Ellers kan der ikke skrives noget ud fra dette dokument --> <noframes> <body>Din browser kan ikke håndtere rammer (frames) ! </body> </noframes> </frameset> </html>
De to frames til output er tomme. Det eneste de skal have er et navn, så man kan skrive til den rigtige frame.
Framen med knapperne indeholder alt den kode der laver noget. Denne kode er ret stor, da der er mange forskellige funktioner i den.
<head>
<!-- Man kan ikke angive nogen titel her -->
<script type="text/javascript" language="JavaScript">
var klik = 0;
function indtast() {
tekst = prompt("Indtast et eller andet: ", "");
top.bund.document.write("Du skrev noget ind, det var: " + tekst + "<br />");
klik++ ;
top.bund.document.write("Du har klikket " + klik + " gange.<br />");
}
function fastTekst() {
top.bund.document.write("Her skrives der bare en fast tekst i indholdsruden.<br />");
top.bund.document.write("Der kan egentlig udskrives hvad som helst.<br />");
klik++ ;
top.bund.document.write("Du har klikket " + klik + " gange.<br />");
}
function slet() {
top.bund.document.close();
top.bund.document.write();
klik++;
}
function leadZero(tal) {
if (tal < 10) {
tal = "0" + tal;
}
return tal;
}
function opdaterUr() {
// Lokal variabel med tiden (så den forsvinder igen)
var nu = new Date();
time = nu.getHours();
minut = nu.getMinutes();
sekund = nu.getSeconds();
// Skriv klokken og luk tekst-outputtet, så det er et frisk vindue der skrives i næste gang der kaldes
top.klokken.document.write( "Klokken er " + leadZero(time) + ":" + leadZero(minut) + ":" + leadZero(sekund) );
top.klokken.document.close();
// Global variabel med en timeout, som opdaterer vinduet efter 1 sekund
// Variablen skal være global, for at lukKlokken kan se den
timer = window.setTimeout("opdaterUr()", 1000);
}
function startUr() {
opdaterUr();
klik++;
}
function stopUr() {
// Stopper timer-variablen, så der ikke kommer flere timeouts
if (timer) {
window.clearTimeout(timer);
timer = null;
}
top.klokken.document.close();
top.klokken.document.write(" "); // Der skal skrives noget andet for at det sletter
klik++;
}
</script>
</head>
<body>
<h1>Skrivning i Frames</h1>
<!-- Knapperne herunder bliver brugt til at udføre handlingerne med -->
<input type="button" value="Fast Tekst" onClick="fastTekst();">
<input type="button" value="Indtastning" onClick="indtast();">
<input type="button" value="Start uret" onClick="startUr();">
<input type="button" value="Stop uret" onClick="stopUr();">
<input type="button" value="Slet indholdsruden" onClick="slet();">
</body>
Filen med koderne kan hentes i en Zip-fil
Fordele ved framesæt som output
Fordelen ved at anvende framesæt som output er, at man kan anvende document.write over i en anden frame, og dermed udskrive rigtigt meget ved hjælp af forskellig kode.
Ulemper ved framesæt som output
Ulempen er at frameset ikke er standard i HTML længere, så der kan være problemer med hvor længe browsere understøtter denne teknik.
| Webcode | |
|---|---|
| JavaScript | for - while - do while - for in - løkke - løkker i løkker - if - if-else - else-if - Conditional - Switch - break - continue - Funktion - Return - Returværdi - Rekursion - Sekvens - Javascript strukturer |
| js Input | Checkbox - Dropdown - Form - Input button - Input filter - Input password - Input text - Textarea - submit knap - Option - Prompt - Confirm - Radio button - Select - Input-Tag - Keyboard event |
| js Output | Alert - Document.write - Frameset output - Objekt egenskaber - Objekt output - Text-felt til output - Vindue output - Billed egenskaber - Canvas |
| js Syntaks | Arrays - Betingelse - Identifyer - Variabel - Variabel scope - Type - Sekvens |
| js Objekt | Canvas - Billed egenskaber - Egne objekter - Events - HTML-objekter - Keyboard event - Event-handler - Browser detektering - Preload images - Document Object Model |
| Tid i JavaScript | Date objektet - setTimeout - setInterval |
| PHP | Header - Include |