Bonjour,
je suis entrain de réaliser une application dans laquelle se trouve du javascript. Je vous explique : j'ai une image de fond sur laquelle je désire afficher des rectangles à des endroits précis sur la carte à l'aide des coordonnées x et y. J'ai trouvé une fonction javascript qui me permet de dessiner des rectangles en cliquant sur la carte. Le seul problème c'est qu'un rectangle est dessiné à chaque fois que je clique sur la carte, par exemple : si je clique 3 fois sur la carte, il y aura au final 3 rectangles dessinés mais ce que je voudrais, c'est qu'il n'y en ait qu'un seul. Ce que je veux, c'est afficher un rectangle lors d'un clic et ensuite, lorsque que je vais cliquer ailleurs, le rectangle ira s'afficher à l'autre endroit indiqué.
Merci pour votre aide.( Cela doit fonctionner sur IE version 6)
Voici le code javascript pour dessiner un rectangle (il est appelé sur un onclick de l'image de fond):
function drawRectangle(left, top, width, height) {
var newdiv=document.getElementById("newdiv");
// si newDiv est null alors création de la div.
if ( !newdiv ){
/* je me demande bien pourquoi ce test si tu te limites à IE, document.createElement fonctionne sur IE, FF, Opéra ...*/
if (document.createElement) {
newdiv=document.createElement("div");
newdiv.style.position="absolute";
newdiv.style.backgroundColor = 'red';
newdiv.style.visibility = 'visible';
newdiv.id = 'newdiv';
newdiv.innerHTML = "real";
document.body.appendChild(newdiv);
}
}
// positionne la div.
newdiv.style.left = left+"px";
newdiv.style.top = top+"px";
newdiv.style.width = width+"px";
newdiv.style.height = height+"px";
}
Et voilà une seule div
[o-_-o]