Fusion de deux scripts Javascript.
Bonjour, tout d'abord petite précision : je ne connais pas le Javascript. :oops:
Mais j'aimerais m'en servir pour faire un chti truc sympathique pour mon site : durant le preload de tous les éléments de mon site je voudrais qu'il y ait un div qui cache le reste du site puis qui s'efface progressivement pour pas que le passage soit trop brutal.
Donc, j'ai récupéré deux codes - qui fonctionnent séparément - qui devraient me permettre de faire ce que je veux, mais j'ai un peu de mal à les synthétiser en un seul code :
* le premier rends invisible un div lorsque tous les éléments de la page sont chargés :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
var nava = (document.layers);
var dom = (document.getElementById);
var iex = (document.all);
if (nava) { cach = document.cache }
else if (dom) { cach = document.getElementById("cache").style }
else if (iex) { cach = cache.style }
largeur = screen.width;
cach.left = Math.round((largeur/2)-200);
cach.visibility = "visible";
function cacheOff()
{
cach.visibility = "hidden";
}
window.onload = cacheOff |
* le deuxième fait disparaitre progressivement le contenu d'un div lorsque l'on clique sur un bouton.
Code:
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
|
var opacite = 100;
function cacheDiv()
{
var obj = document.getElementById("cache");
opacite--;
if (obj.style.filter) // IE
{
obj.style.filter = "alpha(opacity=" + opacite + ")";
}
else
{
if (obj.style.MozOpacity) //FF
{
obj.style.MozOpacity = opacite/100;
}
else
{
if (obj.style.opacity) // FF et Opera (?)
{
obj.style.opacity = opacite/100;
}
else
{
if (obj.style.KhtmlOpacity) //Konqueror (Linux), Safari(MacOS)
{
obj.style.KhtmlOpacity = opacite/100;
}
}
}
}
if (opacite<100)
setTimeout("cacheDiv()","20");
} |
J'ai bien essayé de faire :
Code:
1 2 3 4 5
|
function cacheOff()
{
cacheDiv();
} |
à la place de :
Code:
1 2 3 4 5
|
function cacheOff()
{
cach.visibility = "hidden";
} |
Mais ca marche pas.
J'vous met aussi le code CSS appliquée à la div "cache" au cas où :
Code:
1 2 3 4 5
|
#cache {
position : absolute; top : 200px; left : 200px; width : 800px; height : 600px; z-index: 2; background-color : black; text-align : center;
-moz-opacity : 1; filter : alpha(opacity=1); opacity : 1;
} |
Voilà voilà. Merci d'avance pour votre aide ! :)