• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Crossfade Slideshow working in Firefox, not in IE7


jmarcus

Junior Member
#1
Hi

Here's the site that I'm referring to:

Parsec Enterprises Inc.

The crossfade slideshow is positioned fine in Firefox/Safari - but in IE7 the slideshow inches downward each slide. Is there a way to fix this or should I find another script?

Here's the script:

Code:
<script type="text/javascript">		var cf = new Crossfader( new Array('cf1','cf2','cf3','cf4','cf5','cf6','cf7'), 500, 4000 );</script>
And

Code:
/** *  author:        Timothy Groves - http://www.brandspankingnew.net *    version:    1.3 - 2006-11-02 *                1.2 - 2006-11-01 *                1.1 - 2006-09-29 *                1.0 - 2006-09-25 * *    requires:    nothing * */var useBSNns;if (useBSNns){    if (typeof(bsn) == "undefined")        bsn = {}    var _bsn = bsn;}else{    var _bsn = this;}_bsn.Crossfader = function (divs, fadetime, delay ){        this.nAct = -1;    this.aDivs = divs;        for (var i=0;i<divs.length;i++)    {        document.getElementById(divs[i]).style.opacity = 0;        document.getElementById(divs[i]).style.position = "absolute";        document.getElementById(divs[i]).style.filter = "alpha(opacity=0)";        document.getElementById(divs[i]).style.visibility = "hidden";    }        this.nDur = fadetime;    this.nDelay = delay;            this._newfade();}_bsn.Crossfader.prototype._newfade = function(){    if (this.nID1)        clearInterval(this.nID1);        this.nOldAct = this.nAct;    this.nAct++;    if (!this.aDivs[this.nAct])    this.nAct = 0;        if (this.nAct == this.nOldAct)        return false;        document.getElementById( this.aDivs[this.nAct] ).style.visibility = "visible";        this.nInt = 50;    this.nTime = 0;        var p=this;    this.nID2 = setInterval(function() { p._fade() }, this.nInt);}_bsn.Crossfader.prototype._fade = function(){    this.nTime += this.nInt;        var ieop = Math.round( this._easeInOut(this.nTime, 0, 1, this.nDur) * 100 );    var op = ieop / 100;    document.getElementById( this.aDivs[this.nAct] ).style.opacity = op;    document.getElementById( this.aDivs[this.nAct] ).style.filter = "alpha(opacity="+ieop+")";        if (this.nOldAct > -1)    {        document.getElementById( this.aDivs[this.nOldAct] ).style.opacity = 1 - op;        document.getElementById( this.aDivs[this.nOldAct] ).style.filter = "alpha(opacity="+(100 - ieop)+")";    }        if (this.nTime == this.nDur)    {        clearInterval( this.nID2 );                if (this.nOldAct > -1)            document.getElementById( this.aDivs[this.nOldAct] ).style.visibility = "hidden";                    var p=this;        this.nID1 = setInterval(function() { p._newfade() }, this.nDelay);    }}_bsn.Crossfader.prototype._easeInOut = function(t,b,c,d){    return c/2 * (1 - Math.cos(Math.PI*t/d)) + b;}
Any ideas? Thanks!
 

Jazajay

Active Member
#2
Hay buddy are you still having the problem, or did you get it sorted?
Sounds like it is a CSS problem, not sure how you have done it but if it is a list form, give each list a position of relative and move the top up say 100 pixels, each should then follow suit and it should fix it.

If you are still having problems post your css and html.

Jaz