jQuery derived from javascript have beautiful method of creating fade effect.
But how can I achieve same height using my own custom javascript code?
I wanted the most simple one.. which fades out to zero.
Here is a pure implementation of fade in and fade out effect using JavaScript.
Make use of CSS Opacity property
During fade out process, we reduce the opacity value from 0.9 to 0
Similarly fade in process increase the 0.0 to 0.9
For IE its 10 to 90
Use setTimeout() function to call the fade function recursively with delay and increase / decrease opacity value to achieve the fade effect
function fadeOut(id,val){ if(isNaN(val)){ val = 9;}
document.getElementById(id).style.opacity='0.'+val;
//For IE
document.getElementById(id).style.filter='alpha(opacity='+val+'0)';
if(val>0){
val--;
setTimeout('fadeOut("'+id+'",'+val+')',90);
}else{return;}
}
function fadeIn(id,val){
// ID of the element to fade, Fade value[min value is 0]
if(isNaN(val)){ val = 0;}
document.getElementById(id).style.opacity='0.'+val;
//For IE
document.getElementById(id).style.filter='alpha(opacity='+val+'0)';
if(val<9){
val++;
setTimeout('fadeIn("'+id+'",'+val+')',90);
}else{return;}
}
Cheers -Clain
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With