jimyarts
Messages postés6Date d'inscriptiondimanche 21 juin 2009StatutMembreDernière intervention 1 février 2010
-
23 juin 2009 à 11:38
jimyarts
Messages postés6Date d'inscriptiondimanche 21 juin 2009StatutMembreDernière intervention 1 février 2010
-
23 juin 2009 à 16:27
Tout d'abord, bonjour à toute la communauté de CS,
Je suis en train d'élaborer un site concernant le cyclisme, et donc les coureurs. Je connais bien le milieu, je connais leur valeur mais j'aimerais rendre mon site un peu plus interactif.
Donc je vous présente mon projet : je souhaiterais que l'on puisse :
- cliquer à un endroit de n'importe quelle barre graphique par exemple celle d'un grimpeur, et que la largeur de la barre bleue s'adapte à l'endroit où j'ai cliqué.
-ou bien que l'on puisse coulisser le marqueur séparant la partie bleue et la partie grise.
Et que ça me donne une valeur situé entre 0 et 10,0 dans une textbox.
Ensuite je pense pouvoir me débrouiller pour établir un formulaire.
Donc premièrement, ai-je été clair ? deuxièmement est-ce réalisable à l'aide de Javascript et enfin troisièmement merci à tous ceux qui prendront la peine de m'aider .
Je vous montre le code :
Note : Sur mon site j'ai tenté un onmouseover mais c'était pas concluant et puis je n'arrivait pas à tirer une valeur. ( c'est mon plus gros problème en réalité.)
var stopAction = function(e)
{
YUE.stopEvent(e);
return false;
};
var setValue = function(nFrom,nTo,dFromBtn , bNotChangePosition )
{
var nOldFrom = this.from ;
var nOldTo = this.to ;
var sElementId = this.id ;
var dEl = document.getElementById(sElementId);
var dBox = document.getElementById(sElementId + '-box');
var dC0 = document.getElementById(sElementId + '-ctrl-0');
var dC1 = document.getElementById(sElementId + '-ctrl-1');
var dC2 = document.getElementById(sElementId + '-ctrl-2');
var dLn1 = document.getElementById(sElementId + '-line-1');
var nSliderWidth =dBox.offsetWidth;
var nf = Math.min( nTo , Math.max( 0 , nFrom ) );
var nt = Math.min( 100 , Math.max( nFrom ,nTo ) );
if(isNaN(nf)){ nf = 0 };
if(isNaN(nt)){ nf = 100 };
nf = Math.round(nf);
nt = Math.round(nt);
var sElementId = oSelf.id ;
var dEl = document.getElementById(sElementId);
var dBox = document.getElementById(sElementId + '-box');
var dC0 = document.getElementById(sElementId + '-ctrl-0');
var dC1 = document.getElementById(sElementId + '-ctrl-1');
var dC2 = document.getElementById(sElementId + '-ctrl-2');
var dLn1 = document.getElementById(sElementId + '-line-1');
var nSliderWidth = dBox.offsetWidth;
var nOffsetLeft = YUD.getX( dBox ) || YUD.getX( dEl );
var nLimitLeft = 0;
var nLimitRight = nSliderWidth - dBtn.offsetWidth ;
var nSliderWidth = nSliderWidth ;
oSelf.onMouseDown = new YUC('mousedown');
oSelf.onMouseUp = new YUC('mouseup');
oSelf.onSlide = new YUC('slide');
oSelf.onLoad = new YUC('load');
oSelf.onChange = new YUC('change');