![]() |
I och med att sidorna byggda på AJAX laddas direkt i webläsaren och inte behöver åka ut på äventyr till servern och sedan tillbaka måste väl det bli en jäkla skillnad för de som sitter på gammla uppringda modem?
AJAX borde ju vara frälsningen för tredje världens surfare som inte sitter på samma snabba linor som vi i Sverige. Har jag tänkt rätt nu? |
Visst skickas data fram och tillbaka, men det är bara delar av sidan som skickas. Inte alltihop. Å andra sidan kan en ajax-baserad applikation skicka mer data en en vanlig sida eftersom de ofta förladdar viss information och börjar göra anrop bara man skriver ett par bokstäver i ett sökfält eller pekar över en länk.
|
AJAX är en metod för att utveckla sidor och inte en teknik i sig. Vad det handlar om är att skicka och ta emot små mängder data med hjälp av XMLHttpRequest. Det är absolut inget att krav att använda XMLHttpRequest, men det hjälper. Liknande effekter skulle kunna uppnås med hjälp av iframe.
Att AJAX skulle vara någon magisk lösning för de med långsamma uppkopplingar är lite väl optimistiskt. Först och främst måste deras webbläsare och system stödja både Javascript och XMLHttpRequest. Att dessutom ladda in hela sidor förtar effekten en aning, eftersom man dessutom bryter Tillbaka-knappen. AJAX är inte helt ojämförbart med Flash på den punkten att det är en i grunden bra teknik om man kan motivera användandet, men det är lätt att göra fel också. AJAX, liksom Flash, lämpar sig bäst för små delar av sidan, exempelvis en "live search" eller att dynamiskt sortera data. Man gör dock fortfarande klokt i att levera alternativ. W3Schools.com konstaterade enligt deras statistik för Januari 2006 att 10% av deras besökare hade Javascript avstängt. Givetvis är statistik missledande, men det ger i a f en fingervisning, lita inte på att javascript är aktiverat. |
En sak som jag reflekterat över på sistone är att mången AJAX-sidor känns mer trögladdade. Kanske är det ren inbillning, men istället för att vänta 1 s på att sidan laddas blir en snurrande gif upptryckt i nyllet för att sedan ladda innehållet.
Jag har en hotmail-slask som numera körs under ms "live" system med ajax. I tidigare hotmail kändes det som sidorna gick snabbare, nu får jag vänta på en snurrande boll innan jag får tillgång till mailet. Fler som har samma tankar? |
Citat:
|
Problemet med ajax är att det fullständigt dödar servrar. Tänk bara tex om wn skulle ha en automatisk/live uppdatering av medlemmarna som läste en viss specifik tråd.
Det blir många requests / sekund bara för att uppdatera det värdet. Det går såklart att cacha, men skapar mycket load i sig självt. Man får vara försiktig i avvägningen användbarhet/realitet :) |
Citat:
I mitt tycke ska ajax endast användas för händelser som triggas av användaren. Den ska inte användas för att periodiskt checka av om ett värde förändrats på servern. Dvs, posta ett formulär och få snabbare respons på formulärets skickande eller "läs mer om" och sedan uppdateras en del av sidan är sådant som är relevant för ajax. För periodisk förändring av värden på servern borde en push-teknik vara mer aktuell. |
Jo, men push är svårt/omöjligt att implementera via HTTP. Ajax är lätt att implementera via HTTP :)
Hela grejen är ju att med ajax blir det helt plötsligt enklare än innan att skapa live uppdateringar av sidan. Mitt exempel är rätt bra - det skulle vara häftigt om man satt och skrev och man i realtid såg hur olika användare hoppas in och ut ur just denna tråden. Sen självklart.. push javisst.. men det skulle kräva java/flash + separat mjukvara på servern för att lösa på ett bra/standardiserat sätt idag (http & långa timeouts räknas inte som ett standardiserat sätt enligt mig). |
Jag använder ajax rätt mycket på mitt senaste projekt, javascript i allmänhet ligger mig väldigt varmt om hjärtat då man kan få mycket mer liv och flyt i en site (ja, siten fungerar utmärkt även utan js, men man får skylla sig själv då man blåser många kul funktioner).
Det som gör att ajax ofta uppfattas som segt är ju det faktum att javascripten inte exekveras speciellt tidigt - vanligtvis när hela sidan är färdigladdad = fina väntetider. Det bästa är ju att man kompletterar med en serverlösning som används när sidan laddas - sedan kan man FÖRÄNDRA infon med ajax - alltså förändra - inte skapa. Då får man ett mycket bättre flyt. Sedan, yep, visst kan man minska trafiken oerhört med ajax, och minska serverbelastningen överhuvudtaget (det kan man göra med enbart js också). Ta ett formulär som exempel. Ett forum, att meddelandet inte kan skickas om textrutan är tom. Att kontrollera detta med js är busenkelt. Om man inte använder js till det så måste sidan laddas om, kanske laddas klasser, ramverk, massor av prylar in innan servern har upptäckt att fältet är tomt. Kanske har även databasfrågor utförts. Ett litet javascript gjorde att vi slapp den belastningen. Sedan fördelar med ajax är ju som sagt att man kan uppdatera enskilda fält bara och inte hela sidan. Startsidan på mitt community är helt ajaxbaserat. Startsidan är proppad med ett gäng flikar, som använder ajax om js är aktiverat, annars blir det vanliga querysträngar ?tab=news. När ajax används så minskar trafikmängden till ca 5% eftersom övriga sidan är helt statisk. Detta är en stor optimering för oss och gör absolut att siten fungerar bättre och är snabbare. En annan fördel med detta, då 1k istället för 20k laddas är att det går ju så mycket fortare för användaren. Ett klick på en sån där flik ger så snabbt resultat att innehållet är presenterat nästan samtidigt som man släpper upp musknappen - sånt tackar vi inte nej till. Men i allmänhet att sidor blir snabbare med ajax etc kan jag inte hålla med om. Och som flera här redan har sagt - att ha hela ramverk, alltså hela siter i ajax är idioti, utan små element lite här och var - det är fina grejer det. Jag själv är i alla fall en stor fan - och användare av ajax och js. Jag tycker det är märkligt att så få använder dem. Om det är något som gör mina produkter bättre än andras så är det ju dessa dynamiska element. Mer ajax och mer js till folket. |
Citat:
Jag har nämligen precis börjat använda YUI och tycker det är smidigt eftersom jag inte behöver uppfinna det hjulet själv. Men menar du att det inte är bra att använda dessa eftersom det tar för mycket bandbredd? Och ni som har använt AJAX-toolkits, kan inte ni tipsa oss andra om era erfarenheter av dessa. Sedan ett litet tips som jag plockat upp är att man lägger Javscripten så nära </body> taggen som möjligt. Eftersom då laddas allt innehåll och sedan laddas javascripten in, det tar bort lite av laddningstiden för användaren. Väldigt hjälpsamt Om ni vill se hur mycket bandbredd och tid dom här XMLHttpRequest tar, varje gång de anropas, så kan ni ladda ner Firebug (http://www.getfirebug.com). Där kan man se exakta timelines för hur lång tid varje enskilt innehåll tar att ladda (http://www.getfirebug.com/net.html) http://www.getfirebug.com/net.gif |
Alla tider är GMT +2. Klockan är nu 17:01. |
Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson