Without correcting a lot of things that are non-standard about your demo code:
Code:
<html>
<head>
<title>Testing Page</title>
<script type="text/javascript">
var myCounter = 0;
var myArray = ['image1.jpg', 'image2.jpg', 'image3.jpg', 'image4.jpg'];
var arraylen = myArray.length;
function changepic()
{
if(arraylen > myCounter){
document.getElementById('test').innerHTML = 'Counter : ' +myCounter + '<br>Array : ' +arraylen + '<br><img src="' +myArray[myCounter] + '">';
myCounter++;
}
else {
myCounter = 0;
changepic();
}
}
function alertme()
{
intervalID = setInterval(changepic, 5000);
}
</script>
</head>
<body bgcolor='#ffffff' onload="alertme();">
<div id='test'>
<img src="image1.jpg">
</div>
</body>
</html>
should (untested) take care of it. The basic problem in your version is that:
Code:
function alertme()
{
if(arraylen > myCounter){
intervalID = setInterval(changepic, 5000);
}else{
intervalID = setInterval(changepic2, 5000);
}
only runs once, and that even if it ran continually and started setting various different intervals, things would fairly quickly get all jumbled up with several intervals playing out concurrently, some even simultaneously.
Bookmarks