1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
| // setOpacity : change l'opacite d'un objet
// op : nouvelle valeur d'opacite (0-100)
// obj : objet concerne
function setOpacity (obj, op) {
style = obj.style;
if (style.opacity != undefined) style.opacity = (op / 100);
else if (style.MozOpacity != undefined) style.MozOpacity = (op / 100);
else if (style.KhtmlOpacity != undefined) style.KhtmlOpacity = (op / 100);
else if (style.filter != undefined) style.filter = "alpha(opacity=" + op + ")";
}
// getOpacity : retourne l'opacite d'un objet (0-100)
// obj : objet concerne
function getOpacity (obj) {
var op;
if (obj.style.opacity != undefined) { (obj.style.opacity=="") ? (op=100) : (op=(obj.style.opacity * 100)); }
else if (obj.style.MozOpacity != undefined) { (obj.style.MozOpacity == "") ? (op=100) : (op=(obj.style.MozOpacity * 100)); }
else if (obj.style.KhtmlOpacity != undefined) { (obj.style.KhtmlOpacity == "") ? (op=100) : (op=(obj.style.KhtmlOpacity * 100)); }
else if (obj.style.filter != undefined) op=(obj.style.filter.substring(14,obj.style.filter.length-1));
else return null;
return op;
}
// fadeIn : augmente l'opacite d'un objet en un temps donne
// obj : objet
// opEnd : opacite d'arrive (0-100)
// ms : vitesse de changement (ms - pour aller de 0 a 100 d'opacite)
// arrayTimer : tableau de timer (optionnel)
function fadeIn (obj, opEnd, ms, arrayTimer) {
if (arrayTimer != undefined) {
for (i=0;i<=arrayTimer.length-1;i++) clearTimeout(arrayTimer[i]);
}
arrayTimer=new Array();
var opStart = getOpacity(obj);
var speed=Math.round(ms/100);
var coeff = 0;
for (i=opStart;i<=opEnd;i++) {
arrayTimer.push(setTimeout(
function(k) {
return function(){
setOpacity(obj,k);
};
}(i),
(coeff*speed)
)
);
coeff++;
}
return arrayTimer
}
// fadeOut : diminue l'opacite d'un objet en un temps donne
// obj : objet
// opEnd : opacite d'arrive (0-100)
// ms : vitesse de changement (ms - pour aller de 100 a 0 d'opacite)
// arrayTimer : tableau de timer (optionnel)
function fadeOut (obj, opEnd, ms, arrayTimer) {
if (arrayTimer != undefined) {
for (i=0;i<=arrayTimer.length-1;i++) clearTimeout(arrayTimer[i]);
}
arrayTimer=new Array();
var opStart = getOpacity(obj);
var speed=Math.round(ms/100);
var coeff = 0;
for (i=opStart;i>=opEnd;i--) {
arrayTimer.push(setTimeout(
function(k) {
return function(){
setOpacity(obj,k);
};
}(i),
(coeff*speed)
)
);
coeff++;
}
return arrayTimer;
} |
Partager