11552 sujets

JavaScript, DOM et API Web HTML5

Bonjour,

je voudrais pouvoir déplacer une div en cliquant et glissant. En gros sur un onmousedown. Cependant la div ne doit pas pouvoir sortir de l'élémént parent. J'ai réussi à faire un script qui fonctionne mais seulement quand il n'y a qu'un seul parent, hors je voudrais pouvoir mettre plusieurs div imbriqués.

Vous trouverez l'exemple simple à l'addresse suivante :
http://easydev.free.fr/projet/

Comme vous le constatez, quand on bouge la première, ça fonctionne, quand on bouge celle en rouge, ça fonctionne mais quand on essaye de bouger celle en blanc dans la rouge, ça ne fonctionne plus.

Alors j'ai peut être déjà fais une usine à gaz et si c'est le cas, je suis prêt à prendre n'importe quelle amélioration Smiley smile ...en plus de la réponse à la question Smiley cligne

Merci d'avance
Modifié par WebShaman (23 Sep 2005 - 15:00)
Administrateur
Bonjour et bienvenu,

amusant de jouer avec, c'est pour le Web2.0 et la disparition des OS remplacés par des web apps? Smiley lol Je m'emballe peut-être un peu ...

J'ai quelques difficultés (avec FF) à me ressaisir d'un cadre lorsque je viens de le déplacer ... Et parfois à le lâcher, un peu collant!
Ne connaissant rien à JS/ECMAmachin, est-ce que ça peut venir du fait que la fin de l'évènement n'est pas ou mal gérée (out)? Tu le gères peut-être d'ailleurs, j'ai vainement essayé de regarder le script mais c'est un peu du chinois pour moi Smiley cligne

Pour le cadre blanc: cela dépend de la position du cadre parent; ça a l'air correct s'il est en haut à gauche mais le décalage est le double de la position du coin haut gauche du parent sinon Smiley smile En retranchant cette position, ça devrait être correct. Ou bien c'est retranché mais la variable ne contient pas ce à quoi tu t'attends
Le but est effectivement de pouvoir faire un application web...application dans le sens de application desktop. Je fais par petit morceau que je colle ensemble et là je voudrais pouvoir faire bouger les div (par exemple pour simuler du multi-fenêtrage plus tard Smiley smile )

En fait j'ai des pb avec FF et IE quand on sort du navigateur et qu'on revient et pour FF quand on change de tab également. Ca vient peutre être des addEventListener qui se passe mal mais là aussi je vois pas la raison.

Mais effectivement y'a un problème avec les coordonnées, le souci c'est que j'ai beau me creuser la tête, j'arrive pas à voir ce qui manque, j'ai essayé beaucoup de chose mais rien n'a fonctionné, je pensais que quelqu'un saisirait peut être l'erreur ou pourrait me donner sa solution perso. N'étant pas grand spécialiste de Javascript, je dois oublier quelque chose.

Le pire sera que je devrais reprendre mon papier et mon crayon et écrire un algorithme à la main pour être sûr de ne rien oublier...enfin la question reste ouverte.
Modifié par WebShaman (23 Sep 2005 - 14:09)
Pour ceux que ça interesse, j'ai fini par reprendre mon souffle et mon papier et mon crayon et vous pouvez retourner à l'adresse indiquer dans le premier post pour voir un petite démonstration du déplacement d'une div dans une autre.
Administrateur
Ca fonctionne *beaucoup* mieux Smiley lol
Ca donne plein d'idées de choses (un peu beaucoup inacessibles) à faire ces déplacements Smiley smile
Ben en fait pour le moment oui mais le but est de selectionner (selection montré par un effet visuel et accessible via ta touche tab), ensuite on pourra également le déplacer avec les flèches du clavier.