Ik wil graag door middel van Javascript een frame refreshen,
maar alleen wanneer er iets in dat frame veranderd is, en
snel...
Ik had dus het idee om gewoon een miniscuul frame op de server
te refreshen, waar een timestamp in zit...
Is het timestamp veranderd, wordt de pagina voor de ECHTE
pagina die ik wil refreshen binnen gehaald, en geswapped
met de huidige...
* still with me ? *
Om te proberen dacht ik eerst om stap 2 over te slaan, dus
gewoon in een keer dat frame refreshen... maar zelfs DAT
lukt niet...
Voorbeeld:
code:Ik heb 2 frames, A en B... Ik heb nu een miniscuul+---------------+------------------+
| | |
| | |
| A | B |
| | |
| | |
+---------------+------------------+
Zo heb ik het ooit geprobeert:
code:Iemand ENIG idee ?<SCRIPT>
var TimeStamp=parent.BFrame.document.Time.Stamp.value;function EventCheck()
{
if (! parent.BFrame.document.Time)
{
setTimeout("EventCheck()",5000);
};
parent.HiddenFrame.document.location.href='current.html';
if (TimeStamp!=parent.HiddenFrame.document.Time.Stamp.value)
{
TimeStamp=parent.HiddenFrame.document.Time.Stamp.value;
parent.BFrame.document.location.href='current.html';
parent.ActiveFrame.document.location.href='active.html';
}
setTimeout("EventCheck()",2000);
};
</SCRIPT>
quote:Ooops... sorry... die functie word bij onLoad() voor het
Op vrijdag 24 januari 2003 12:52 schreef syllaz het volgende:
Je moet je TimeOut volgens mij buiten je functie zetten....
Nu zit ie in de functie en weet js niet wanneer ie die functie moet aanroepen
Maar logisch gezien:
er veranderde iets in B.
Daardoor moet er in A ook iets veranderen.
Een reload van de hele pagina, is dat nix?
quote:Daar zou ik mee kunnen beginnen... maar het probleem begint al eerder:
Op vrijdag 24 januari 2003 12:55 schreef mvdlubbe het volgende:
ehm.
Ik ben niet erg thuis in Javascript (niet, zeg maar).Maar logisch gezien:
er veranderde iets in B.
Daardoor moet er in A ook iets veranderen.Een reload van de hele pagina, is dat nix?
quote:En de verandering van de inhoud van B is willekeurig. Er zit geen logica in anders dan random?
Op vrijdag 24 januari 2003 12:57 schreef ChOas het volgende:[..]
Daar zou ik mee kunnen beginnen... maar het probleem begint al eerder:
De verandering in dat timestamp frame wordt niet opgemerkt...
quote:B is het timestamp frame, en is inderdaad willekeurig...
Op vrijdag 24 januari 2003 13:00 schreef mvdlubbe het volgende:[..]
En de verandering van de inhoud van B is willekeurig. Er zit geen logica in anders dan random?
code:En dan in frame A elke 5 seconden ofzo changingvar checken of ie is veranderd, en dan reloaden als dat zo is.<body onload="init(); return true;">
<script>
function init() {
parent.framea.changingvar = "bla";
}
</script>
Of een andere mogelijkheid.
B gooit onload de veranderende variabele in een var van A, maar voordat ie dat doet checkt ie of ie veranderd is (tov wat ie er eerder in had gegooid). Zo ja dan refreshed ie A.
quote:Kijk!... en DAT is dus het probleem... HOE doe ik dat ?
Op vrijdag 24 januari 2003 13:09 schreef raphidae het volgende:En dan in frame A elke 5 seconden ofzo changingvar checken of ie is veranderd, en dan reloaden als dat zo is.
Of een andere mogelijkheid.
B gooit onload de veranderende variabele in een var van A, maar voordat ie dat doet checkt ie of ie veranderd is (tov wat ie er eerder in had gegooid). Zo ja dan refreshed ie A.
quote:In een onzichtbaar iframe.
Op vrijdag 24 januari 2003 13:11 schreef ChOas het volgende:[..]
Kijk!... en DAT is dus het probleem... HOE doe ik dat ?
quote:Prima, geen probleem... maar het probleem is het Java-script
Op vrijdag 24 januari 2003 13:56 schreef ramH het volgende:[..]
In een onzichtbaar iframe.
kickje
Je kan wel aan een element een onChange hangen:
<INPUT TYPE="text" onChange="blabla();">
Die wordt dus getriggerd op het moment dat er iets wijzigt (zoals de waarde).
Je kan deze overal aan koppelen, ook bijv aan de body.
Misschien dat dat je probleem al oplost?
quote:De server veranderd de timestamp...
Op zondag 26 januari 2003 21:24 schreef Schorpioen het volgende:
Ik begrijp niet precies wat je nou wil. Wanneer verandert die timestamp dan? Doe je dat met een javascriptje, of doet de gebruiker dat?Je kan wel aan een element een onChange hangen:
<INPUT TYPE="text" onChange="blabla();">
Die wordt dus getriggerd op het moment dat er iets wijzigt (zoals de waarde).
Je kan deze overal aan koppelen, ook bijv aan de body.
Misschien dat dat je probleem al oplost?
Okay.. als voorbeeld: Ik heb een camera op mijn deur gericht staan,
en dat ding maakt elke seconde een foto
van 1 Mb... nou kan ik dat ding met mijn webbrowser bekijken,
maar refreshen duurt natuurlijk lang, en daar heb ik geen
zin in... DUS ... als de bel gaat schrijft de server een
nieuw timestamp in een filetje, wat gepolled wordt door
de browser, dit wordt gedetecteerd door (het op dit moment
nog niet bestaande ) javascript, en het frame met de foto wordt gerefreshed.
Dit was dus maar een voorbeeld, dus denk alsjeblieft niet
dat ik een camera of watdanook heb hangen, het gaat alleen
om het principe...
[Dit bericht is gewijzigd door ChOas op 27-01-2003 12:56]
tussendemiddagschopje
myrefresh.php?current_timestamp=timestamp; en die gooit er uit
code:of<!--niets...-->
code:Afhankelijk van of je timestamp overeenkomt met die andere pagina..<script>
parent.FRAME_A_NAME.document.location = parent.FRAME_A_NAME.document.location;
</script>
?
quote:Die ga ik eens proberen!... thanks!
Op maandag 27 januari 2003 13:13 schreef Roonaan het volgende:
Als je dan in framepje B een of andere php laadtmyrefresh.php?current_timestamp=timestamp; en die gooit er uit
code:of<!--niets...--> code:Afhankelijk van of je timestamp overeenkomt met die andere pagina..<script>
parent.FRAME_A_NAME.document.location = parent.FRAME_A_NAME.document.location;
</script>?
|
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |