AJAX ist zwar dem Namen nach asynchron, der dahinterstehende XMLHttpRequest jedoch auch zur synchronen Behandlung fähig:
// xhr sei unser Request-Objekt
xhr.open(URL, Method, isAsync)
In diesem Fall ist isAsync ein boolean - und für synchrone Request übergebe ganz einfach "false". Schon wird der Thread so lange geblockt, bis das Ergebnis da ist.
Achtung: Firefox neigt dazu, Events selbst dann zu blocken, wenn man synchrone Requests mit window.setTimeout aus dem Thread herauszunehmen versucht. In diesem Fall bleibt lediglich ein asynchroner Request oder noch eleganter, JSONp.
Gruß, LX
--
RFC 1925, Satz 2: Egal, wie fest man schiebt, ganz gleich, wie hoch die Priorität ist, man kann die Lichtgeschwindigkeit nicht erhöhen.
RFC 1925, Satz 2: Egal, wie fest man schiebt, ganz gleich, wie hoch die Priorität ist, man kann die Lichtgeschwindigkeit nicht erhöhen.