Code:
<html>
<head>
<script language="JavaScript">
<!--
var objVals = {
textArray: null,
counter: 0,
randomArray: null,
xmlURL: "testimonial.xml",
intervalTime: 2000
}
function setText(){
document.getElementById("testimonials").innerHTML=
objVals.textArray[objVals.randomArray[objVals.counter]];
objVals.counter++;
if(objVals.counter>=objVals.textArray.length){
objVals.counter=0;
}
setTimeout("setText()",objVals.intervalTime);
}
function onLoadFunction(){
var xmlDoc;
//Code for IE
if (window.ActiveXObject)
{
xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async=false;
xmlDoc.load(objVals.xmlURL);
}
// code for Mozilla, Firefox, Opera, etc.
else if (document.implementation && document.implementation.createDocument)
{
xmlDoc = document.implementation.createDocument("","",null);
xmlDoc.async=false;
xmlDoc.load(objVals.xmlURL);
}
var x = xmlDoc.documentElement.getElementsByTagName("text");
var text = new Array;
for(i=0;i<x.length;i++){
text[i]=x[i].textContent;
}
// now randomise the array
// create an array with number 0 to x lenght
var numbers=new Array();
for(i=0;i<x.length;i++){
numbers[i]=i;
}
// fill randomNumbers randomly with numbers from numbers array
// this will assure that randomNumbers has only unique numbers
var randomNumbers=new Array();
i=0;
while(i<numbers.length){
var tmp = Math.floor(Math.random() * numbers.length);
randomNumbers[randomNumbers.length]=numbers[tmp];
numbers.splice(tmp, 1);
}
objVals.textArray=text;
objVals.randomArray=randomNumbers;
setText();
}
-->
</script>
</head>
<body onload="onLoadFunction();">
<div id="testimonials">
</div>
</body>
</html>
Code:
<?xml version="1.0" encoding="ISO-8859-1"?>
<testimonials>
<text>
This Would be the Text for a Testimonial.
-- Joe Student, Lawrence, Kansas.
</text>
<text>
Another glowing Testimonial from a person.
-- Sally Student, Columbus, Ohio.
</text>
<text>
The best site ever!
-- Johnny Student, Topeka, Kansas
</text>
</testimonials>
Thanks in advance for any help!
