Javascript: Frames vullen via de index-pagina

Status
Niet open voor verdere reacties.

silkcom

Gebruiker
Lid geworden
11 okt 2000
Berichten
714
Ik wil in een index.html twee frames maken.
Tevens moeten deze twee frames wat tekst bevatten.
Hoe dit normaal gaat door de source van de twee frames te benoemen weet ik.
Wat ik nu echter wil is om via javascript beide frames met wat info-tekst vullen tijdens het opstarten van de index.html.

Dit mag echter niet gedaan worden door naar een andere html-pagina te verwijzen. Dus niet:

<frameset>
<frame name=fr1 source=whatever1.html>
<frame name=fr2 source=whatever1.html>
<frameset>

De inhoud van de frames wil ik graag vullen vanuit javascript dat is beschreven in de index.html.

Het volgende heb ik al geprobeerd:
===========================================
<HTML>
<HEAD>
<TITLE>Marktplaats - tuin</TITLE>
<META HTTP-EQUIV="refresh" CONTENT="600">
<script language="JavaScript">
<!--
function xx()
{
fr2.document.write("<html><body>");
fr2.document.write("Hallo, dit is een boodschap van frame 2.");
fr2.document.write("</body></html>");
}
// -->
</script>
</HEAD>
<FRAMESET rows="50%,50%">
<FRAME name="fr1" source="about:blank">
<FRAME name="fr2" source="about:blank">
</script>
<script language="JavaScript">
<!--
xx();
// -->
</FRAMESET>
</HTML>
===========================================

De javascript-code heb ik op diverse plaatsen gedefinieerd. Helaas zonder resultaat.

Is het eigenlijk wel mogelijk? En zo ja, Wie weet hoe het wel moet?
 
<html>
<head>
<title>Een frameset geschreven met JavaScript | Egel 050601</title>
<meta http-equiv="refresh" content="12">
<script language="JavaScript">
<!--
var _begin = '<html><head><style>body {background: #fff; color: #000; font-family: Verdana; font-size: 13px; line-height: 154%;} small { font-size: 11px;} input { border: 0px; float: right; color: #f6f6f6; font-size: 160px; text-align: right;}</style></head><body>';
var _einde = '</body></html>';
function writeContent() {
with (boven.document) {
open();
writeln(_begin);
writeln('<input type="text" id="teller" value="12" size="2" readonly>');
writeln('Dit is het boven frame.<br><br>');
writeln('<small>' + new Date() + '<br>Deze frameset ververst zich elke 12 seconden.</small>');
writeln(_einde);
close();
};
setInterval('boven.teller.value--',1000);
with (onder.document) {
open();
writeln(_begin);
writeln('En dit het onder frame.');
writeln(_einde);
close();
};
// setTimeOut('writeContent()',6e5); // alternatief voor de meta refresh
};
// -->
</script>
</head>
<frameset rows="50%,50%" onload="writeContent()" border="0" framespacing="0" frameborder="no">
<frame name="boven" src="about:blank" noresize style="border-bottom: 1px solid #999">
<frame name="onder" src="about:blank" noresize>
</frameset>
</html>

================

Met een onload werkt het, de pagina moet eerst helemaal geladen zijn voordat de frames kunnen worden geschreven.

Het verversen kan ook zonder meta door de functie zichzelf te laten aanroepen met setTimeOut, open & close zorgen er dan voor dat het overschreven wordt.

with (object) {
function();
function();
};

is een manier om niet telkens object.function(); te hoeven schrijven.


Vr.Gr. Egel.

(bijlage: bovenstaande pagina)
 

Bijlagen

  • onthefly.txt
    1,4 KB · Weergaven: 43
:thumb:

Toppie man ! ! !

Er zat nog een kleine onvolkomenheid in (weet helaas niet waar). Maar na aanpassing aan mijn behoeftes werkt het geheel.

Bedankt.
 
Graag gedaan!

Misschien dat de afteller wat problemen veroorzaakte, of de style die op 1 regel staat (kun je scheiden met \n). En een reaktie posten voegt een spatie toe in about:blank.

Het idee was ook om een aantal dingen toe te voegen zodat je kon gebruiken waar je wat aan hebt.

Als het nog eens misgaat, post ff een link, zowiezo leuk.


Gr. Egel.
 
Ik was op zoek naar stenen voor de tuin. Maar aangezien er zoveel sites zijn had ik geen zin om elke keer de url of zo in te brengen. deze heb ik nu op een verzamelpagina met frames gemaakt.

Elke minuut krijg je een andere pagina te zien.
Het kan nog verder verbeterd worden. Maar het werkt in ieder geval vlekkeloos.

Ik zal het posten zodat een ander er ook nog wat aan kan hebben.

Bedankt nog.
 

Bijlagen

  • is.zip
    1,6 KB · Weergaven: 25
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan