/*------------------------------------------------------------------------- imgRotator.js Author: Andy Sherman Company: Visual Blaze Client: Hoaglin Descr: Index page image rotator -----------------------------------------------------------------------*/ //initialize variables //var xmlPath = "../xml/imgRotator.xml.php"; var xmlPath = "http://www.hoaglinfinecatering.com/wp-content/themes/hoaglinTheme/xml/imgRotator.xml.php"; var imgElement = "#banner img"; var textParent = "#banner #bannerText"; var count = 0;//initialie count var for text rotation $(document).ready(function() { //parse xml to obtain data and run postParse function $.ajax({ type: "GET", url: xmlPath, dataType: "xml", success: textAnimate }); }); function textAnimate(xml) { //build 2d array of information //declare parent array var dataArray = new Array(); //iterate through all image nodes $(xml).find("image").each(function(i) { //tempVars from xml var bURL = $(this).find("file").text(); var bAlt = $(this).find("title").text(); var bText = $(this).find("title").text(); var bLinkURL = $(this).find("link").text(); //push associative array [object] into dataArray dataArray[i]= {bURL: bURL, bAlt: bAlt, bText: bText,bLinkURL: bLinkURL}; }); //call text function to initialize first pull from xml file switchText(dataArray); //set timer to rotate all subsequent text changes on interval setInterval(function(){switchText(dataArray); parameter = null},9000); } function switchText(dataArray) { //traverse to each text element and change with array element on count var $(textParent).html(dataArray[count]["bText"] + 'Read MoreContact Us'); //change image elements $(imgElement).attr("src",dataArray[count]["bURL"]); $(imgElement).attr("alt",dataArray[count]["bAlt"]); //increment or reset count node if(count != (dataArray.length -1)) { count++; }else{ count=0; } //preload next image preload(dataArray[count]["bURL"]); } function preload(image) { $('')[0].src = image; }