HighDots Forums  

Pseudo-Streaming

Javascript (German) Programmiersprache JavaScript. (de.comp.lang.javascript)


Discuss Pseudo-Streaming in the Javascript (German) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
CPub
 
Posts: n/a

Default Pseudo-Streaming - 11-17-2007 , 08:07 AM






Hallo,

folgendes Problem:

Ich habe eine Software, die den Zwischenspeicher bei Änderung auf
einen Server schiebt (Clipboard Publisher). Immer mit dem gleichen
Dateinamen.
Wie bekommt man jetzt zum Betrachten ein ruckelfreies Pseudo-Streaming
hin? Mein Konstrukt macht ein Meta-Refresh in Frame 1 und übergibt
dann das Bild per Funktion an Frame 2.

function wechseln1(link1){
parent.frame2.wechseln2(link1);
}

function wechseln2(link2){
"document.images["XYZ"].src = link2;
}

Das geht aber nur wenn sich der Dateinname des Bildes ändert.
Gibt es auch einen Weg wenn der Dateiname konstant bleibt?

Gruß, CPub

Reply With Quote
  #2  
Old   
Martin Honnen
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 08:16 AM






CPub wrote:

Quote:
function wechseln2(link2){
"document.images["XYZ"].src = link2;
}

Das geht aber nur wenn sich der Dateinname des Bildes ändert.
Gibt es auch einen Weg wenn der Dateiname konstant bleibt?
Im Browser könnte
document.images["XYZ"].src = link2 + '?time=' + new Date().getTime();
helfen.



--

Martin Honnen
http://JavaScript.FAQTs.com/


Reply With Quote
  #3  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 08:27 AM



Martin Honnen wrote:
Quote:
CPub wrote:
function wechseln2(link2){
"document.images["XYZ"].src = link2;
}

Das geht aber nur wenn sich der Dateinname des Bildes ändert.
Gibt es auch einen Weg wenn der Dateiname konstant bleibt?

Im Browser könnte
document.images["XYZ"].src = link2 + '?time=' + new Date().getTime();
helfen.
Wenn http://www.mnot.net/cache_docs/ nicht schon hilft, ist

document.images["XYZ"].src = link2 + '?' + (+new Date());

performanter.


PointedEars


Reply With Quote
  #4  
Old   
CPub
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 08:30 AM



On 17 Nov., 15:27, Thomas 'PointedEars' Lahn <PointedE... (AT) web (DOT) de>
wrote:
Quote:
Martin Honnen wrote:
CPub wrote:
function wechseln2(link2){
"document.images["XYZ"].src = link2;
}

Das geht aber nur wenn sich der Dateinname des Bildes ändert.
Gibt es auch einen Weg wenn der Dateiname konstant bleibt?

Im Browser könnte
document.images["XYZ"].src = link2 + '?time=' + new Date().getTime();
helfen.

Wennhttp://www.mnot.net/cache_docs/nicht schon hilft, ist

document.images["XYZ"].src = link2 + '?' + (+new Date());

performanter.

PointedEars
Vielen Dank, kannst Du kurz sagen was diese Extension macht.


Reply With Quote
  #5  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 08:42 AM



CPub wrote:
^^^^
Bitte trage an dieser Stelle Deinen vollständigen/richtigen Namen ein.
Das gilt hier im deutschsprachigen Usenet als höflich und erhöht somit
die Chance für sinnvolle Antworten. [psf 7.16]

Quote:
Ich habe eine Software, die den Zwischenspeicher bei Änderung auf
einen Server schiebt (Clipboard Publisher). Immer mit dem gleichen
Dateinamen.
Wie bekommt man jetzt zum Betrachten ein ruckelfreies Pseudo-Streaming
hin? Mein Konstrukt macht ein Meta-Refresh in Frame 1 [...]
Besser wäre zusätzlich window.setTimeout(). meta[http-equiv="refresh"] ist
nicht standardisiert und wird (daher) nicht von allen UAs unterstützt; z.B.
in Opera lässt sich die Unterstützung dafür das sogar abschalten.

Quote:
und übergibt dann das Bild per Funktion an Frame 2.
Erscheint mir unnötig kompliziert.

<head>
...
<script type="text/javascript">

function nextImage()
{
if (typeof window != "undefined"
&& typeof window.location != "undefined")
{
// see http://PointedEars.de/scripts/types.js
if (isMethodType(typeof window.location.replace)
&& window.location.replace)
{
window.location.replace(window.location);
}
else if (isMethodType(typeof window.location.reload)
&& window.location.reload)
{
window.location.reload(true);
}
else
{
window.location = window.location;
}
}
}

window.setTimeout("nextImage()", 5000);
</script>
</head>

<body>
...
<img ...>
...
</body>

in *einem* Dokument genügt bereits.


PointedEars
--
Anyone who slaps a 'this page is best viewed with Browser X' label on
a Web page appears to be yearning for the bad old days, before the Web,
when you had very little chance of reading a document written on another
computer, another word processor, or another network. -- Tim Berners-Lee


Reply With Quote
  #6  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 08:44 AM



[Fullquote ausnahmsweise beabsichtigt, siehe
http://lernst.de/zitieren/kriegst.de/antworten]

CPub wrote/zu Deiner Priorität-Alpha-1-Nachricht von Sternzeit 17.11.2007 15:30:
Quote:
On 17 Nov., 15:27, Thomas 'PointedEars' Lahn <PointedE... (AT) web (DOT) de
wrote:
Martin Honnen wrote:
CPub wrote:
function wechseln2(link2){
"document.images["XYZ"].src = link2;
}
Das geht aber nur wenn sich der Dateinname des Bildes ändert.
Gibt es auch einen Weg wenn der Dateiname konstant bleibt?
Im Browser könnte
document.images["XYZ"].src = link2 + '?time=' + new Date().getTime();
helfen.
Wennhttp://www.mnot.net/cache_docs/nicht schon hilft, ist

document.images["XYZ"].src = link2 + '?' + (+new Date());

performanter.
[...]

Vielen Dank, kannst Du kurz sagen was diese Extension macht.
Weshalb zitierst Du meine Unterschrift? Worauf beziehst Du Dich?


PointedEars
--
Lass den Käse mit MS-Fromage besser sein, lerne HTML (kennen) und designe
mit einem gescheitem Editor (z.B Notepad (c. (Michael 'Netzmeister Micha'
Specht in http://selfhtml.de/forum/zeigebeitra...563_78273.php3


Reply With Quote
  #7  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 08:48 AM



Thomas 'PointedEars' Lahn wrote:
Quote:
window.setTimeout("nextImage()", 5000);
Der Vollständigkeit halber sollte das latür auch

if (isMethodType(typeof window.setTimeout)
&& window.setTimeout)
{
window.setTimeout("nextImage()", 5000);
}

Entweder man macht keinen Feature-Test oder (empfohlen) man macht immer einen.

Die Variante mit `document.images' habe ich absichtlich nicht gewählt, damit
es dank meta[http-equiv="refresh"] wenigstens die Chance hat, auch ohne
clientseitigen Script-Support zu funktionieren.


PointedEars


Reply With Quote
  #8  
Old   
Heiko Falke
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 09:22 AM



On 17 Nov., 15:48, Thomas 'PointedEars' Lahn <PointedE... (AT) web (DOT) de>
wrote:
Quote:
Thomas 'PointedEars' Lahn wrote:
window.setTimeout("nextImage()", 5000);

Der Vollständigkeit halber sollte das latür auch

if (isMethodType(typeof window.setTimeout)
&& window.setTimeout)
{
window.setTimeout("nextImage()", 5000);
}

Entweder man macht keinen Feature-Test oder (empfohlen) man macht immer einen.

Die Variante mit `document.images' habe ich absichtlich nicht gewählt, damit
es dank meta[http-equiv="refresh"] wenigstens die Chance hat, auch ohne
clientseitigen Script-Support zu funktionieren.

PointedEars
Danke nochmal!


Reply With Quote
  #9  
Old   
Heiko Falke
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 09:32 AM



On 17 Nov., 15:48, Thomas 'PointedEars' Lahn <PointedE... (AT) web (DOT) de>
wrote:
Quote:
Thomas 'PointedEars' Lahn wrote:
window.setTimeout("nextImage()", 5000);

Der Vollständigkeit halber sollte das latür auch

if (isMethodType(typeof window.setTimeout)
&& window.setTimeout)
{
window.setTimeout("nextImage()", 5000);
}

Entweder man macht keinen Feature-Test oder (empfohlen) man macht immer einen.

Die Variante mit `document.images' habe ich absichtlich nicht gewählt, damit
es dank meta[http-equiv="refresh"] wenigstens die Chance hat, auch ohne
clientseitigen Script-Support zu funktionieren.

PointedEars
Hallo,

der Code läuft, ruckelt aber noch. Gibt es auch eine ruckelfreie
Lösung?
Das wollte ich mit den Frames versuchen. Da gibt es aber ein Problem
mit dem Cache.

Gruß, Heiko


Reply With Quote
  #10  
Old   
Thomas 'PointedEars' Lahn
 
Posts: n/a

Default Re: Pseudo-Streaming - 11-17-2007 , 09:45 AM



Heiko Falke wrote:
Quote:
[...] Thomas 'PointedEars' Lahn [...] wrote:
Thomas 'PointedEars' Lahn wrote:
window.setTimeout("nextImage()", 5000);
Der Vollständigkeit halber sollte das latür auch

if (isMethodType(typeof window.setTimeout)
&& window.setTimeout)
{
window.setTimeout("nextImage()", 5000);
}

Entweder man macht keinen Feature-Test oder (empfohlen) man macht immer einen.

Die Variante mit `document.images' habe ich absichtlich nicht gewählt, damit
es dank meta[http-equiv="refresh"] wenigstens die Chance hat, auch ohne
clientseitigen Script-Support zu funktionieren.
[...]
Das Zitieren von Signaturen und Unterschriften ist unsittlich,
sofern darauf inhaltlich nicht Bezug genommen wird. [dsf 7.6]

Quote:
der Code läuft, ruckelt aber noch. Gibt es auch eine ruckelfreie
Lösung?
Mir ist nicht klar, was Du mit "Ruckeln" meinst. Klar sollte Dir sein, dass
beim Neuladen des Dokuments und progressivem Rendern es eine Weile dauert,
bis das neue Bild geladen ist.

Wenn Du kein Neuladen des Dokuments mit dem Bild sondern nur das Bild
austauschen willst, musst Du `document.images' verwenden und Benutzer ohne
Script- und DOM-Support in die Röhre gucken lassen, da Du den Support für
meta[http-equiv="refresh"] AFAIK nicht testen kannst.

Quote:
Das wollte ich mit den Frames versuchen. Da gibt es aber ein Problem
mit dem Cache.
Non sequitur. Frames sind nicht die Ursache des Problems, sondern dass der
Browser nicht erkennen kann, dass sich trotz gleichem URL die Ressource
geändert hat, wenn Du es ihm nicht sagst. Siehe Caching-Tutorial.


PointedEars
--
Der erfahrene IE-Fahrer weiß, daß man Slalom am besten im ersten Gang fährt,
weil schnelles Lenkradumreißen bei IE zum Lenkradabreißen führt. Wer
sportlich fahren will, muß Netscape fahren und hin und wieder auch mal
anschieben. ;-) --Georg Maaß, dcljs, <amuqrl$91i3q$1 (AT) ID-3551 (DOT) news.dfncis.de>


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.