Välkommen till en gratis, svensk Harry Potter-community

F5

AJAX

Forum > Nyheter > AJAX

1 2
Bevaka tråden
Användare Inlägg
Erfa
Rektor

Avatar


Under natten har jag just gjort en ganska stor teknisk förändring på sidan - AJAX. Det betyder att man när man trycker på länkar laddas det bara in material som är nytt, i stället för att ladda om hela sidan. I teorin.

I praktiken är det lite krångligare. Det fungerar så att man anropar ett javascript som hämtar den nya delen av sidan, och lägger den på lämpligt ställe. Problemet är att när man gör det så uppdateras ju inte adressen (URL:en)! Alltså ser man inte riktigt var på sidan man är. Det gör det bland annat svårt att länka till sidan man just är på - om man vill skicka den till en vän i ett chattprogram, eller liknande.

Om man är en användare som bara klickar runt är inte det ett så stort problem, men jag tycker att det är väldigt jobbigt. Det finns ingen perfekt lösning på det, för javascript kan inte lura webbläsren att den plötsligt är på en ny sida, av säkerhetsskäl. Just nu har jag infört en tjusig "Uppdatera"-knapp, bredvid "Logga ut"-knappen. Om man klickar på den laddas hela sidan om till där man är nu (det är alltså helt enkelt en länk till den nuvarande sidan). Man kan också högerklicka på den och välja "kopiera länk" eller liknande, om man bara vill ha själva länken.

Än så länge är det bara själva menylänkarna som är AJAX, men jag ska uppdatera det till resten av sidan lite då och då. Det kräver tyvärr att man uppdaterar alla länkar för hand, så det kommer att ta lite tid.

Förhoppningsvis kommer ni inte att märka så mycket av den här förändringen, förutom att sidan går lite snabbare (!), men om ni mot förmodan skulle hitta några buggar, så skriv här, eller i forumet!

Jag svarar gärna på frågor om det är några oklarheter, eller om någon bara är nyfiken.

10 apr, 2010 12:08

MattiasD
Elev

Avatar


Kul med nya uppdateringar!

10 apr, 2010 14:02

Oskan
Elev

Avatar


Själv tycker jag att det har gått lite slöare idag än igår, ibland kommer man inte ens in i forumen man trycker på och det var en omöjlighet att spela HP-hangman. Ingen tid startas och det går inte att skriva in några bokstäver Är det bara jag?

Är det inte bättre att byta till ett bättre webbhotell än att hålla på att krångla så här, eller det kanske är ännu mer krångel. Läser webbdesign i skolan, men vi har inte hållt på med mkt mer än HTML, CSS (Dreamweaver) och media till. Önskar att jag kunde vara till någon hjälp

"May the force be equal to mass times acceleration"

10 apr, 2010 17:12

Erfa
Rektor

Avatar


Skrivet av Oskan:
Själv tycker jag att det har gått lite slöare idag än igår, ibland kommer man inte ens in i forumen man trycker på och det var en omöjlighet att spela HP-hangman. Ingen tid startas och det går inte att skriva in några bokstäver Är det bara jag?

Det är förhoppningsvis en ren slump. Jag testade hangman, och det verkade fungera. Det är ju vissa perioder där sidan laddar väldigt segt, så jag gissar på att du bara stötte på en sån.

Det problemet är förresten kvar. Även om själva överföringstiderna borde bli kortare av det är det ju databasförfrågningar som tar tid, och de görs fortfarande.

EDIT: Förresten, jag ser att Hänga Harry faktiskt har problem. Det är något sessionsgrejs som krånglar. Ska kolla på det nu.

10 apr, 2010 17:17

Oskan
Elev

Avatar


Provade Hänga Harry igen och nu funkar det. Varför krånglar det? Man kan ju inte säga att detta är en särskilt tung sida.

"May the force be equal to mass times acceleration"

10 apr, 2010 19:09

Erfa
Rektor

Avatar


Skrivet av Oskan:
Provade Hänga Harry igen och nu funkar det. Varför krånglar det? Man kan ju inte säga att detta är en särskilt tung sida.

Förmodligen för att det är ett billigt webbhotell. Det fungerar bra för små sidor, men det görs väldigt många SQL-anrop när man laddar en sida.

Dels kan nog jag förbättra koden en aning, men när jag kör den på en lokal server genereras allt väldigt snabbt, fast det är en identisk databas.

Jag vet inte riktigt hur man ska lösa det. Det är ju inte direkt så att den här sidan har några pengar.

10 apr, 2010 19:12

Oskan
Elev

Avatar


Du kan ju göra lite reklam för den på andra HP-sidor som fefo. Försök få med lite fler medlemmar, jag vet inte om det är lite fräckt som fefo, för att bli medlem där måste man betala en tia. Du kan inte komma på lite små grejer som man kan betala för? Kanske bara något så litet som att det står Animagus istället (jag vet, stulet från Hogwarts.nu ) för Medlem, eller att man får in liten ikon under avatarn, som visar att man har donerat till sidan. Så att man tjänar ngt på att donera! Du kanske har några idéer själv? Men först och främst måste du få in fler medlemmar till sidan och då kanske jobba lite mer på den så att fler vill vara kvar!

Lycka till

"May the force be equal to mass times acceleration"

10 apr, 2010 19:34

MattiasD
Elev

Avatar


Nej jag skulle rekommendera google adsense längst ner på hemsidan mot en bättre webbhotel.

10 apr, 2010 19:46

Erfa
Rektor

Avatar

+1


Jag vill ju helst undvika allt som gör sidan kommersiell. Anledningen till att hogwarts.nu tvingades stänga var ju att de tog betalt för vissa tjänster. Det gjorde det till en kommersiell sida, vilket innebär att de måste betala för att få använda varumärken från Harry Potter, till exempel elevhemsnamnen. Det är därför det är något annat på Fefo.

Annonser kanske är okej, jag vet inte. Annars kan jag gå runt med en insamlingsbössa på Harry Potter-konvent.

10 apr, 2010 19:51

MattiasD
Elev

Avatar

Detta inlägg gav 10 poäng till Gryffindor!

Upptäckte två "buggar" med det nya.

1. Hemsidan hänger inte med vilken sida jag är på så när jag var på forums startstidan och tryckte på F5 kom jag hit. Sen gick jag tillbaka till startsidan via menyn och såg att du hade skrivit.

2. Då tryckte jag på denna forumtråd och då kom det bara fram en 0.


Ett sätt att korta ner segheten borde väll vara att ta bort alla användare som aldrig har registrerat sig som bara tar plats? Det är ju ungefär 4 sidor med sådana medlemmar.

10 apr, 2010 20:01

1 2

Bevaka tråden

Forum > Nyheter > AJAX

Du får inte svara på den här tråden.