Bonjour, tout d'abord petite précision : je ne connais pas le Javascript.
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
function cacheOff()
	{
	cacheDiv();
	}

à la place de :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 : Sélectionner tout - Visualiser dans une fenêtre à part
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 !