<a onClick="swapImageStart(0);" href="javascript://"><div id="div_01">Working FF/Opera Next Photo</div></a>
<a onClick="swapImageStart(1);" href="javascript://"><div id="div_02">Not really working Next Photo for IE/FF/Opera</div></a>
<div id="div_03" style="position:absolute; visibility:visible; top:50px; left:150px; "><strong>Loading Photo</strong></div>
<div id="div_04" style="position:absolute; visibility:hidden; top:100px; left:150px; ">
<img id="img_01" src="[URL unfurl="true"]http://img.photobucket.com/albums/v239/riluve/PC1.gif"[/URL] border="0" alt="Pic 01">
</div>
<script language="javascript">
var imgs = new Object(); // Hold info on images
imgs.Ndex = 0; // point to current image
imgs.names = new Array("PC1.gif","AMD1.gif","AMD2.gif") // image file names
var img_01_obj = document.getElementById("img_01"); //init img object
var div_03_obj = document.getElementById("div_03"); //init div object
window.onload = function()
{
swapImageEnd ();
}
//------------------------------------------------------
function swapImageStart(arg0)
{
if(imgs.Ndex == imgs.names.length) imgs.Ndex = 0;
img_01_obj.style.visibility = "hidden"; //turn off image
div_03_obj.style.visibility = "visible"; //turn on loading message
if (arg0)// proper way to attach/replace events
{
img_01_obj.onload=null;
img_01_obj.load=null;
if (window.attachEvent)
{
img_01_obj.attachEvent("onload", function() {swapImageEnd(imgs.Ndex)});
}
else if (window.addEventListener)
{
img_01_obj.addEventListener("load", function() {swapImageEnd(imgs.Ndex)}, true);
}
img_01_obj.setAttribute("onLoad", "swapImageEnd('+imgs.Ndex+')");
var d01 = document.createElement("div");
d01.appendChild(document.createTextNode("-bad set trigger-"));
document.body.appendChild(d01);
}
else // working events attached for FF/Opera
{
img_01_obj.setAttribute("onLoad", "swapImageEnd('+imgs.Ndex+')");
var d01 = document.createElement("div");
d01.appendChild(document.createTextNode("-good set trigger-"));
document.body.appendChild(d01);
}
// change source for image - when image finishes loading
//it should trigger the onload event which is swapImageEnd()
setTimeout('img_01_obj.setAttribute("src", "[URL unfurl="true"]http://img.photobucket.com/albums/v239/riluve/'+imgs.names[/URL][img].Ndex[/img]+'");',500);
}
//------------------------------------------------------
function swapImageEnd () //event triggered when new image is loaded
{
var d01 = document.createElement("div");
d01.appendChild(document.createTextNode("-trigger run-"));
document.body.appendChild(d01);
img_01_obj.style.visibility = "visible"; //turn on image
div_03_obj.style.visibility = "hidden"; //turn off loading message
imgs.Ndex=imgs.Ndex+1; //set index to next image
}
//------------------------------------------------------
</script>