AJAX XMLHttpRequest
- Föregående sida AJAX Introduktion
- Nästa sida AJAX Suggest
XMLHttpRequest-objektet gör AJAX möjligt.
XMLHttpRequest
XMLHttpRequest-objektet är nyckeln till AJAX.
Detta objekt har varit tillgängligt sedan Internet Explorer 5.5 och släpptes i juli 2000, men innan människor började diskutera AJAX och Web 2.0 2005, var objektet inte tillräckligt känt.
Skapa XMLHttpRequest-objekt
Olika webbläsare använder olika metoder för att skapa XMLHttpRequest objekt.
Internet Explorer använder ActiveXObject。
Andra webbläsare använder namnet XMLHttpRequest JavaScripts inbyggda objekt.
För att övervinna detta problem kan du använda följande enkel kod:
var XMLHttp=null if (window.XMLHttpRequest) { XMLHttp=new XMLHttpRequest() } else if (window.ActiveXObject) { XMLHttp=new ActiveXObject("Microsoft.XMLHTTP") }
Kodförklaring:
- Först skapa ett som används som XMLHttpRequest-objekt XMLHttp Variabel. Sätt dess värde till null.
- Därefter testar window.XMLHttpRequest Om objektet är tillgängligt. I nya versioner av Firefox, Mozilla, Opera och Safari är objektet tillgängligt.
- Om det är tillgängligt, använd det för att skapa ett nytt objekt:XMLHttp=new XMLHttpRequest()
- Om det inte är tillgängligt, kontrollera window.ActiveXObject Om objektet är tillgängligt. I Internet Explorer version 5.5 och högre versioner är objektet tillgängligt.
- Om det är tillgängligt, använd det för att skapa ett nytt objekt:XMLHttp=new ActiveXObject()
Förbättrad exempel
Vissa programmerare föredrar att använda den senaste och snabbaste versionen av XMLHttpRequest-objektet.
Följande exempel försöker ladda Microsofts senaste version av "Msxml2.XMLHTTP", som är tillgänglig i Internet Explorer 6, om det inte går att ladda, går tillbaka till "Microsoft.XMLHTTP", som är tillgänglig i Internet Explorer 5.5 och senare versioner.
function GetXmlHttpObject() { var xmlHttp=null; try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); } catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; }
Kodförklaring:
- Först skapa ett objekt som används som XMLHttpRequest-objektet XMLHttp Variabel. Sätt dess värde till null.
- Skapa objekt enligt webbstandard (Mozilla, Opera och Safari):XMLHttp=new XMLHttpRequest()
- Skapa objekt enligt Microsofts sätt, tillgängligt i Internet Explorer 6 och högre versioner:XMLHttp=new ActiveXObject("Msxml2.XMLHTTP")
- Om ett fel fångas, försök med en äldre metod (Internet Explorer 5.5):XMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
Mer information om XMLHttpRequest-objektet
Om du vill läsa mer om XMLHttpRequest, besök vår AJAX-lärord。
- Föregående sida AJAX Introduktion
- Nästa sida AJAX Suggest