Avatar billede Hindsholm Nybegynder
18. april 2013 - 23:36 Der er 5 kommentarer

Automatisk opdatering af hjemmeside

Jeg har fundet dette JavaScript til automatisk opdatering af en hjemmeside i brugerens browser:
<script>
function opdater(){
setTimeout("location.reload()", 10000);
}
opdater();
</script>

Så langt, så godt.

Men hvad er den normale værdi for opdatering? Og ja, ved godt, det kan være afhængigt af behov, men sådan et slag på tasken...

Spørgsmål 2 - vil dette script virke uanset hvilken browser brugeren anvender?
Avatar billede scootergrisen Nybegynder
19. april 2013 - 00:06 #1
Der er ikke nogen norm for værdien for opdatering.

Men hvorfor vil du opdater siden hele tiden ?

Koden vil formodentligt virke i de forskellige browsere så længe Javascript er slået til.

Du kan også tilføje denne kode i <head> delen :
<meta http-equiv="refresh" content="2;url=http://example.com/">

Men spørgsmålet er om det er nødvendigt at opdater hjemmesiden sådan hele tiden. Der er formodentligt en bedre måde at gøre det på.
Avatar billede Hindsholm Nybegynder
19. april 2013 - 00:24 #2
Jeg vil ikke opdatere hjemmesiden hele tiden. Men siden er dels under opbygning og der er derved mange smårettelser og jeg vil jo sikre mig, at brugerne altid ser den sidste nye version uden at skulle bruge en F5'er.

Hvad gør din kode mere præcist - og hvor ofte? Ogg vil den tage alle underliggende sider (htm) med eller vil det være nødvendigt at skrive den fulde sideangivelse?
Avatar billede scootergrisen Nybegynder
19. april 2013 - 03:09 #3
Der står godt nok på https://developer.mozilla.org/en-US/docs/DOM/window.location at reload(true) altid indlæser fra serveren altså ikke fra cache.

Men det giver jo en dårlig oplevelse for dine brugere hvis de er ved at læse noget og hver gang der er gået 10 sekunder så indlæses siden igen.

Jeg tror den bedste måde er ved at bruge en .htaccess fil hvis du bruer Apache server.

Også for eksempel skrive følgende i den :

<filesMatch ".(html|htm|js|css)$">
FileETag None
<ifModule mod_headers.c>
Header unset ETag
Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate"
Header set Pragma "no-cache"
Header set Expires "Wed, 11 Jan 1984 05:00:00 GMT"
</ifModule>
</FilesMatch>

Jeg bruger det dog ikke selv og har ikke testet det.
Avatar billede htx98i17 Professor
19. april 2013 - 06:41 #4
Er eet ikke bare at sætte no cache på hele siden, så henter brugeren altid det nyeste fra serveren når brugeren surfer rundt. Jeg ville personligt selv surfe et andet sted hvis jeg sad og læste noget på siden, og så siden begyndte at reloade af sig selv (og formentlig uden formål).
Avatar billede Hindsholm Nybegynder
19. april 2013 - 09:33 #5
Uden formål er det jo ikke ;-), men selvfølgelig skal siden ikke indlæses alt for tit - måske max en gang i døgnet og ved nattetide. Jeg går ud fra at værdien tæller fra det tidspunkt jeg uploader til serveren?

Metoden med no cache beskrevet andetsteds herinde under samme overskrift forudsætter vist, at brugeren aldrig har haft siden i cachen eller rydder sin cache, hvis han/hun har? Jeg afprøvede det på min egen pc og kunne ikke få det til at virke (men havde så heller ikke lige ryddet cachen, men vil lige prøve på den facon)

Om jeg kører på en Apache server - no idea - er ret meget novice :-)og jeg er ikke så vild med at bruge noget, der ikke er testet.
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
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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