Bonjour le forum,
J'ai besoin d'aide au sujet d'un code d'une fenêtre modale que j'avais trouvé il y a quelque temps déjà je ne sais plus trop ou.
En effet j'aimerais centre cette fenêtre modale quelques soit le dimensionnement de la page sans perdre la possibilité de déplacer la fenêtre et de la fermer.
Cela fait plusieurs jours que j'essaye sans succès voire pire, je massacre le code et plus rien ne fonctionne, quelqu'un pourrait m'aider ?
Merci d'avance de votre aide, ci-dessous le code:
Code html : 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
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
79
80
81
82
83
84
85
86
87
88
89
90
91
<html>
<head>
<title>Scripts javascript : Aperçu</title>
<script language="JavaScript1.2">
// Script Source: CodeLifter.com
// Copyright 2003
isIE=document.all;
isNN=!document.all&&document.getElementById;
isN4=document.layers;
isHot=false;
 
function ddInit(e){
  topDog=isIE ? "BODY" : "HTML";
  whichDog=isIE ? document.all.theLayer : document.getElementById("theLayer");  
  hotDog=isIE ? event.srcElement : e.target;  
  while (hotDog.id!="titleBar"&&hotDog.tagName!=topDog){
    hotDog=isIE ? hotDog.parentElement : hotDog.parentNode; }  
  if (hotDog.id=="titleBar"){
    offsetx=isIE ? event.clientX : e.clientX;
    offsety=isIE ? event.clientY : e.clientY;
    nowX=parseInt(whichDog.style.left);
    nowY=parseInt(whichDog.style.top);
    ddEnabled=true;
    document.onmousemove=dd; }}
 
function dd(e){
  if (!ddEnabled) return;
  whichDog.style.left=isIE ? nowX+event.clientX-offsetx : nowX+e.clientX-offsetx; 
  whichDog.style.top=isIE ? nowY+event.clientY-offsety : nowY+e.clientY-offsety;
  return false;  }
 
function ddN4(whatDog){
  if (!isN4) return;
  N4=eval(whatDog);
  N4.captureEvents(Event.MOUSEDOWN|Event.MOUSEUP);
  N4.onmousedown=function(e){
    N4.captureEvents(Event.MOUSEMOVE);
    N4x=e.x;
    N4y=e.y;
  }
  N4.onmousemove=function(e){
    if (isHot){
      N4.moveBy(e.x-N4x,e.y-N4y);
      return false;   }
  }
  N4.onmouseup=function(){
    N4.releaseEvents(Event.MOUSEMOVE);  }
}
 
function hideMe(){
  if (isIE||isNN) whichDog.style.visibility="hidden";
  else if (isN4) document.theLayer.visibility="hide";
}
 
function showMe(){
  if (isIE||isNN) whichDog.style.visibility="visible";
  else if (isN4) document.theLayer.visibility="show";
}
document.onmousedown=ddInit;
document.onmouseup=Function("ddEnabled=false");
 
</script>
</head>
<body>
 
<br /><p class="tt" >Fenêtre non popup</p><br /><br />
 
<div id="theLayer" style="position:absolute;width:250px;left:100;top:50;visibility:visible">
<table border="0" width="250" bgcolor="#FFCC00" cellspacing="0" cellpadding="5">
<tr><td width="100%">
<table border="0" width="100%" cellspacing="0" cellpadding="0" height="36">
<tr><td id="titleBar" style="cursor:move" width="100%">
<ilayer width="100%" onSelectStart="return false">
<layer width="100%" onMouseover="isHot=true;if (isN4) ddN4(theLayer)" onMouseout="isHot=false">
<font face="Verdana" size="2" color="#000000"><b>Titre de la fenêtre</b></font>
</layer></ilayer></td>
<td style="cursor:hand" valign="top"><a href="#" onClick="hideMe();return false"><font color=#ffffff size=2 face=arial  style="text-decoration:none">X</font></a>
</td></tr>
<tr><td width="100%" bgcolor="#FFFFFF" style="padding:4px" colspan="2">
<font face="Verdana" size="2" color="#000080">Vous pouvez déplacer cette fenêtre comme un simple fenêtre windows.<br>
Vous pouvez bien sur intégrer des <b>balises HTML</b>, liens hypertextes etc...<br><br>
</font>
</td></tr></table> 
</td></tr></table>
</div>
<br><br>
Voici les codes qui permettent de <a href="javascript:showMe();">Montrer</a> la fenêtre ou de la 
<a href="javascript:hideMe();">Cacher</a>
 
</body>
</html>

Meilleures salutations