The name of the game: XmlHttpRequests
På jobbet diskuterade jag att fylla på innehåll från databaser utan att ladda om sidan, av bland annat tillgänglighetsskäl. Utvecklarna var tveksamma, för att säga det milt. De ville snarare ladda olika sidor för att ladda data i ett formulär. Skälet var att det skulle bli alldeles för mycket kod som laddades i onödan om allt låg med från början. (Olika kartblad för olika produkttyper etcetera.)
Någon månad efter mötet lanserades Google Suggest och jag skickade iväg ett e-post till den utvecklare som imponerat mest på mig, HW. Han svarade aldrig i och för sig, men jag hoppas han läste vad jag skrev.
Google Suggest använder XmlHttpRequests för att hämta data från sitt index live. Det är snabbt och fungerar över alla webbläsare jag testat hittills.
Ikväll, när jag återigen började prenumerera på Dave Sheas Mezzoblue igen så hittade jag ett ännu bättre exempel.
Map.Search.ch, an interactive map of Switzerland that pulls in satellite photos and allows you to zoom down from a high level (the entire country) so close that you can make out houses, boats, and trees.
Here’s the kicker — it’s DHTML. No Flash or Java is involved, it’s all being pulled from the server real-time, and the interactive controls (Zoom and Pan both, try click + dragging the map) are something you’d have to be crazy to implement on dynamic data, but there it is anyway thanks to XMLHttpRequest.
(Mezzoblue: DHTML '05)
Det här är naturligtvis svincoolt. Simon Willison, där Dave hittade applikationen, utvecklar i sin blogg:
Even better, it supports hackable URLs letting you link directly to cities or even street addresses.
The dynamic map resizes with your browser window, and the whole lot works in pretty much every modern browser (IE, Mozilla, Opera, Safari, Konqueror) and degrades to a static version for everything else.
(Simon Willison: map.search.ch)
Det är naturligtvis här vi borde vara. I och för sig är vi på väg åt rätt håll, med flash istället för applets som inte fungerar cross browser, men vi leker good enough istället för att leda utvecklingen. Det är trist.
Uppdatering
Dave Shea har uppdaterat med kommentarer från en av utvecklarna. Tekniken de använder är inte XmlHttpRequests. Det är ren DHTML.
Fast ärligt talat blir det inte så mycket mindre coolt efter att man läst det här.
Kommentarer
Kommentera