HTML and CSS Reference
In-Depth Information
to load content dynamically. Asynchronous JavaScript and XML (Ajax) is a means
of loading and injecting content into a page without having to reload the entire page.
For instance, websites such as Twitter and Facebook use Ajax to add new posts to their
pages.
__________
2 See www.w3.org/TR/html5/history.html .
Really simple Ajax
Ajax uses an object called XMLHttpRequest (XHR) to load content from a URL us-
ing JavaScript. This content then can be added to the page by using, for instance, the
innerHTML property of HTML elements.
At its very simplest, using Ajax might look like the following:
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = responseReady;
xmlhttp.open("GET","content.txt",true);
xmlhttp.send();
The var keyword creates a new variable, which is just like a property—it's a con-
tainer that holds some value that can be read or written to. The new variable in this case
holds a new XMLHttpRequest object instance (the new keyword creates this object).
A function is then set to handle the onreadystatechange event, which will be fired
when the XHR object has retrieved some content. The open() method then specifies
the kind of method used to retrieve the file, the filename, and whether the request is
asynchronous (the script continues while the external file loads) or synchronous (the
script waits for the external file to load before continuing). Setting this to true makes
it asynchronous and false sets it to synchronous. The event handling function might
look like this:
function responseReady() {
document.body.innerHTML = xmlhttp.responseText;
}
This script will set the content on the page to the content that was inside the loaded
text file.
As a complete example, we'll create a simple page with a next button and a previous
button and a message that loads between the two. Duplicate the jstemplate directory
 
Search WWH ::




Custom Search