Salut
J'ai fait quelque chose qui ressemble à un alert() en un peu plus joli (il s'agit de 3 div superposés à l'intérieur d'un autre).
<div id="msgBox">
<div id="titreBox"></div>
<div id="contenuBox"></div>
<div id="footerBox"></div>
</div>
Je voulais que msgBox puisse être dépacé dans la fenêtre, comme un alert. J'ai fait ceci :
var dad = false;
var diff_x = 0;
var diff_y = 0;
titreBox.onmousedown = function () {
dad = true;
diff_x = 0;
diff_y = 0;
}
titreBox.onmouseup = function () {
dad = false;
diff_x = 0;
diff_y = 0;
}
titreBox.onmousemove = function () {
if (dad) {
posx = event.x + document.body.scrollLeft;
posy = event.y + document.body.scrollTop;
if (!diff_x) diff_x = (posx - eval (msgBox.style.left.replace ("px", "")));
if (!diff_y) diff_y = (posy - eval (msgBox.style.top.replace ("px", "")));
msgBox.style.left = (posx - diff_x) + "px";
msgBox.style.top = (posy - diff_y) + "px";
}
}
dad permet de dire si on déplace ou pas.
diff_x et diff_y sont l'endroit ou l'on clique titreBox.
Ca fonctionne très bien tnt qu'on déplace lentement. Si on déplace vite et que le curseur sort du div, msgBox ne se déplace plus, et onmouseout n'a plus d'effet (donc quand je repasse sur titreBox après, même si j'ai relaché, celui-ci suit la souris).
Quelqu'un aurait une idée?
Merci d'avance