23.04.2013 Views

javascript

javascript

javascript

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CHAPTER 10 ■ SCRIPTING BOM<br />

Same thing works for a child or :<br />

elements[i].getElementsByTagName("src")[0].firstChild.data<br />

elements[i].getElementsByTagName("alt")[0].firstChild.data<br />

With this in mind, we can cobble together a scroller with our helper function, createElem(), like so:<br />

function parseXML(req) {<br />

if (req.status === 200 || req.status === 304) {<br />

var domTree = req.responseXML;<br />

var elements = domTree.getElementsByTagName("shoe");<br />

var div, ul = createElem("ul", {className: "slide"}), li;<br />

for (var i = 0, j = elements.length; i < j; i ++) {<br />

li = createElem("li", null, [<br />

createElem("a", {href: elements[i].getElementsByTagName("href")[0].firstChild.data}, [<br />

createElem("img", {src: elements[i].getElementsByTagName("src")[0].firstChild.data,<br />

alt: elements[i].getElementsByTagName("alt")[0].firstChild.data})])]);<br />

ul.appendChild(li);<br />

}<br />

div = createElem("div", {className: "scroller", id: "s3"}, [<br />

createElem("div", {className: "wrapper"}, [ul]),<br />

createElem("div", {className: "left arrow sprite"}),<br />

createElem("div", {className: "right arrow sprite"})]);<br />

}<br />

prep();<br />

}<br />

Now the local variable contains the following DOM branch:<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

<br />

But it’s floating around in memory invisible to visitors. So, we need attach the DOM branch to the<br />

tree, the same way we did in parseHTML():<br />

function parseXML(req) {<br />

435

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!