Avatar billede speedpete Nybegynder
06. oktober 2015 - 14:15 Der er 6 kommentarer og
1 løsning

Synkron visning af samme webside, men på forskellige fysisk devices.

Et site indeholder et slideshow.
Sitet skal vises på 5 ved siden af hinanden stående computere med hver deres skærm (og det er IKKE muligt at koble skærmene på samme computer - det havde ellers været nemt).
Forudsætning: Alle computere er sat ens op og har lokale ure, som er præcise og synkroniserede via netværkets tid ned til få milisekunders præcision.

Udfordring: Når sitet er loadet på hver skærm, skal det (via javascript?) styres således, at selvom sitesne måske har taget forskellige tid om at loade på hvert system, så skal slidesne i slideshowet skifte samtidig på hver skærm, med en præcision så det ser ud som om de skifter synkront.

Er det overhovedet muligt? Og i givet fald hvordan?
Avatar billede Slater Ekspert
06. oktober 2015 - 15:05 #1
Kan vi gå ud fra, at slideshowet styres af Javascript, og det altså bare drejer sig om at starte det på det rigtige tidspunkt?

Det kan sagtens lade sig gøre at køre Javascript på et bestemt tidspunkt. Det åbenlyse er at finde forskellen i millisekunder på det ønskede tidspunkt og det nuværende (det kræver lidt kode i Javascript, men der er masser af eksempler på nettet, f.eks. her: http://blogs.digitss.com/javascript/calculate-datetime-difference-simple-javascript-code-snippet )
Og så sætter du en setTimeout() til at køre efter forskellen i millisekunder.
Avatar billede claes57 Ekspert
06. oktober 2015 - 15:53 #2
man kunne måske også lade en være server, og sende ud til de 4 andre - fx http://www.addictivetips.com/windows-tips/screentask-share-pc-screen-with-any-computer-over-wifi-lan/
muligvis skal der være en server (skjult) og 5 slaver.
Avatar billede speedpete Nybegynder
08. oktober 2015 - 08:49 #3
claes57: Det lyder også ret interessant. Jeg har snakket med opdragsgiver, som vil overveje det som et setup. (Men han vil gerne bevare muligheden for at hver device alligevel på et tidspunkt skal kunne vise differentieret indhold baseret på device-ip eller -mac.)
Avatar billede speedpete Nybegynder
08. oktober 2015 - 09:00 #4
viperine:
1.
Ved du, om der findes nogen erfaringer med et sådant setup? Altså om det i praksis er lade-sig-gørligt mht. at flere i princippet ens devices rent faktisk også kører med i praksis fuldstændigt synkroniserede ure?
2.
Hvis (1.) viser sig a holde, så tænker jeg at det er noget med at (jeg er ikke specielt javascript-rutineret), at :
A: Siden bliver indlæst på hvert device på et vilkårligt tidspunkt, som jeg i pricippet ikke kender (nogen kan jo komme til at slukke og genstarte ét device, men ikke de fire andre).
B. Genindlæse hele DOM-en på et eller flere bestemte tidspunkter?
C. Jeg kommer i tanke om, at der er lagt op til både et slideshow, et andet felt, som står og skifter, samt et twitter-feed, så jeg tænker, om det vil være nok at genindlæse DOM'en synkront på hver device på en eller anden måde? Jeg har en URL med en fungerende prototype, jeg kan sende?
Avatar billede anri Novice
20. oktober 2015 - 08:29 #5
Jeg ville nok gøre følgende:
1. Lave en timer der kalder en funktion hvert 5 sekund på hver klient
  Denne timer sætter næste kørsel op via settimeout og date() objectet.
..måske kan du hente inspiration her:
http://stackoverflow.com/questions/4455282/call-a-javascript-function-at-a-specific-time-of-day

2. Timeren checker om der er nye data der skal loades, hvis der er så bliver de pre-loaded til en skjult DIV.

3. Først ved næste interval vises den nye div og den gamle skjules (hvis alt er loaded)


Ved at pre-loade indholdet i baggrunden, kan du slippe uden om problemet med at sider kan have forskellige loade-tider.
Avatar billede speedpete Nybegynder
04. januar 2016 - 06:56 #6
Lukker
Avatar billede speedpete Nybegynder
04. januar 2016 - 06:57 #7
.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester