/*******************************************************************
* File : JSFX_TransSlide.js © JavaScript-FX.com
* Created : 2002/11/04
* Author : Roy Whittle (Roy@Whittle.com) www.Roy.Whittle.com
* Purpose : To create a dynamic slide show.
*
* History
* Date Version Description
* 2002-08-04 1.0 First version
***********************************************************************/
if(!window.JSFX)
JSFX = new Object();
document.write('');
document.write('');
JSFX.slide = function(theImg, theUrl)
{
this.theImg = theImg;
this.theUrl = theUrl;
this.loadImg = new Image();
}
JSFX.TransSlideShow = function()
{
this.id = JSFX.TransSlideShow.getId();
this.state = "stopped";
this.timeId = null;
this.imgName = this.id + "_I";
this.currSlide = -1;
this.slides = new Array();
this.win = null;
this.startDelay = 0;
this.slideDelay = 2000;
this.transType = 24;
this.transDuration= 1;
window[this.id] = this;
}
JSFX.TransSlideShow.slideNo = 0;
JSFX.TransSlideShow.getId = function()
{
return "JSFXts" + JSFX.TransSlideShow.slideNo++;
}
JSFX.TransSlideShow.prototype.toHtml = function(offImg)
{
return('');
}
JSFX.TransSlideShow.prototype.addSlide = function(theImg, theUrl)
{
this.slides[this.slides.length]=new JSFX.slide(theImg, theUrl);
}
JSFX.TransSlideShow.prototype.setStartDelay = function(startDelay) {this.startDelay = startDelay*1000;}
JSFX.TransSlideShow.prototype.setSlideDelay = function(slideDelay) {this.slideDelay = slideDelay*1000;}
JSFX.TransSlideShow.prototype.setTransType = function(transType) {this.transType = transType;}
JSFX.TransSlideShow.prototype.setTransDuration = function(transDuration) {this.transDuration = transDuration;}
JSFX.TransSlideShow.prototype.setSlide = function()
{
var img = document.images[this.imgName];
if(img.filters != null)
{
if(this.transType < 24)
img.filters[0].Transition=this.transType;
img.filters[0].Duration = this.transDuration;
img.filters[0].apply();
}
img.src = this.slides[ this.currSlide ].theImg;
if(img.filters != null)
img.filters[0].play();
}
JSFX.TransSlideShow.prototype.animate = function()
{
if(this.state=="running")
{
this.currSlide = (this.currSlide + 1) % this.slides.length;
this.setSlide();
this.timeId = this.setTimeout("animate()", this.slideDelay);
}
}
JSFX.TransSlideShow.prototype.start = function()
{
if(this.state == "stopped")
{
for(var i=0 ; i