Salut à tous !
Pour un projet de plateforme web à but médical, j'aurais besoin de votre aide.
Je viens de me mettre au javascript pour ce projet, mais n'en ai jamais fait avant, et c'est plutôt urgent donc je n'ai pas le temps d'approfondir plus que ça.
Ma page web serait constituée d'une boîte à gauche dans laquelle se situerait plusieurs div draggables, et d'une boîte à droite dans laquelle on afficherait plusieurs courbes. Ces courbes seraient générées à l'aide d'un script php que j'ai écrit et qui fonctionne.
Le but serait de pouvoir faire glisser chaque div draggable dans la boîte de droite pour que les courbes correspondantes soient affichées à l'écran.
C'est donc une histoire de variable contenue dans chacune des div (ici alt) à transmettre pour afficher des courbes différentes suivant le div glissé.
En ce qui concerne la partie html :
1 2 3 4 5 6 7
|
<div id="boite_gauche">
<div id="objet_draggable" draggable="true" ondragstart="drag(this,event)" ondragend="enddrag(this.event)" alt=210072011">10/07/2011</div>
<div ... ></div>
<div ... ></div>
<div id="boite_droite" ondrop="drop(this.event)" ondragover="over(this.event)" ondragenter="enter(this.event)" ondragleave="leave(this.event)"> |
La partie javascript de drag and drop classique, je ne mets que les parties des fonctions qui nous intéressent :
1 2 3 4 5 6 7 8 9 10 11 12
|
function dra(tgt,e)
{
e.dataTransfer.setData("Text",tgt.id);
e.dataTransfer.effectAllows = 'move';
}
function drop(tgt.e)
{
var id = e.dataTransfer.getData("Text");
tgt.appendChild(document.getElementById(id));
e.preventDefault();
} |
Je pensais donc remplacer les set et get Data.
Par exemple :
setData("Url",'aff_courbe.php?adresse=' + tgt.alt + '&largeur=270&hauteur=200")';
Le script php de génération de courbe prend en paramètres la hauteur, la largeur de la courbe et le nom du fichier de données .txt à afficher (qui correspond ici à la valeur du alt).
Je ne sais pas trop ce que ça donnerait niveau getData, il faudrait qu'il récupère l'adresse de la courbe à générer et l'affiche dans la boîte de droite.
J'espère avoir été assez claire.
Si quelqu'un a une idée, je suis preneuse =)
Merci d'avance.
Hamadryade
Partager