Fade in script

Status
Niet open voor verdere reacties.

bgoo

Gebruiker
Lid geworden
9 mrt 2011
Berichten
61
Hej mensen, ik gebruik het onderste script om, nadat ik een form heb gevalideerd met javascript, een error box in te laten faden.

Echter fade het met dit script ook weer weg als ik weer op "submit" druk.
Mijn vraag: kan het fade out element uitgeschakeld worden in dit script (dus als opacity 100% is, er niks gebeurd) en zo nee is er een makkelijkere manier om dit te bereiken?

Code:
var TimeToFade = 250.0;

function fade(eid){

var element = document.getElementById(eid);
if(element == null)
return;

if(element.FadeState == null){
element.FadeState = -2;
}

if(element.FadeState == 1 || element.FadeState == -1){
element.FadeState = element.FadeState == 1 ? -1 : 1;
element.FadeTimeLeft = TimeToFade - element.FadeTimeLeft;

}else{
element.FadeState = element.FadeState == 2 ? -1 : 1;
element.FadeTimeLeft = TimeToFade;
setTimeout("animateFade(" + new Date().getTime()
+ ",'" + eid + "')", 33);
}
}

function animateFade(lastTick, eid){

var curTick = new Date().getTime();
var elapsedTicks = curTick - lastTick;

var element = document.getElementById(eid);

if(element.FadeTimeLeft <= elapsedTicks){

element.style.opacity = element.FadeState == 1 ? '1' : '0';
element.style.filter = 'alpha(opacity = '
+ (element.FadeState == 1 ? '100' : '0') + ')';
element.FadeState = element.FadeState == 1 ? 2 : -2;

return;
}

element.FadeTimeLeft -= elapsedTicks;
var newOpVal = element.FadeTimeLeft/TimeToFade;
if(element.FadeState == 1)
newOpVal = 1 - newOpVal;

element.style.opacity = newOpVal;
element.style.filter =
'alpha(opacity = ' + (newOpVal*100) + ')';

setTimeout("animateFade(" + curTick
+ ",'" + eid + "')", 33);
}

heel erg bedankt!
 
Laatst bewerkt:
Waarom ga je dan niet werken met jQuery? Dat is een javascript plugin die dat allemaal ingebouwd heeft, en werkt onder de meeste browsers.

Ook heeft het een uitgebreide documentatie.

Even een voorbeeldje: http://api.jquery.com/animate/
 
Hoi bgoo,
Op de een of andere manier zal het fade-out getriggerd worden als je op de submit-knop drukt.
Staat er in de html bij de submit-knop iets van: onclick="[één van de fade-functies]()"?
Zo ja, wat gebeurt er als je dat weglaat?

Met vriendelijke groet,
CSShunter
 
Hey, bedankt voor het reageren, maar ik ben al helemaal into-jquery. Heb het script al afgemaakt en inderdaad: write less, do more haha.

Toch bedankt!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan