|
Bas de page | |
---|---|
Auteur | Sujet : Création d'un range personnalisé (fourchette) |
MaybeEijOrNot but someone at least | Bonjour,
--------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
Publicité | Posté le 07-03-2019 à 16:56:26 |
aliasdmc | Bonjour MaybeEijOrNot,
|
MaybeEijOrNot but someone at least | Bon j'ai pas mal buggé dessus mais ça y est ça bouge : https://codepen.io/anon/pen/rRybpX J'ai plein de choses à faire (notamment retourner sur des %) mais les bases sont posées. Message édité par MaybeEijOrNot le 07-03-2019 à 20:10:55 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
aliasdmc | Bonjour MaybeEijOrNot, |
aliasdmc | Bonjour MaybeEijOrNot, |
MaybeEijOrNot but someone at least | Oui j'ai remarqué, et je pense que c'est vers quoi je vais me diriger. --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
MaybeEijOrNot but someone at least | Bon, pas eu le temps de me pencher dessus à nouveau, j'ai donc terminé aujourd'hui sans faire de "pas" de déplacement du curseur :
--------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
Publicité | Posté le 06-03-2020 à 19:44:34 |
rufo Pas me confondre avec Lycos! | Pour info, quand on travaille avec un min et max de forte amplitude (genre, des timestamp), quand on bouge les bornes et qu'on les remets à leur position initiale, on ne retrouve pas les valeurs min/max du début. Pareil, c'est à cause des arrondis.
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Ok merci je note, ça doit surement pouvoir se corriger lors de l'initialisation aussi. De toute façon faut que je revois tout pour le passer en objet afin de faciliter une implémentation multiple. Mais j'ai du mal à voir comment faire le lien avec le DOM sans le générer dans le JS. Peut-être en attachant l'objet à un élément du DOM sinon. Message édité par MaybeEijOrNot le 10-03-2020 à 17:06:32 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Je serais intéressé par les évolutions de ton implémentation. Je suis parti de ton code pour faire une variante pour filtrer des données basées sur des dates.
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Ok, ben ça va dépendre du temps que j'aurai, j'en avais la semaine dernière, mais insuffisant pour finir ce que je voulais faire. Du coup va falloir que je trouve de nouveau du temps, mais j'ai jamais beaucoup de visibilité. --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Une fois la slidebar affichée avec une valeur min et max, je dois pouvoir positionner les 2 curseurs automatiquement sur 2 valeurs fournies par un objet sur lequel j'ai cliqué. J'arrive bien à faire le filtrage mais impossible de trouver comment faire bouger les 2 curseurs Une idée, svp ?
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
mathieuu | Salut, |
MaybeEijOrNot but someone at least | Oui, s'il te faut un truc dans l'immédiat il doit exister plein de solutions complètes. Moi je voulais ma propre version, et surtout légère. Ce que tu veux faire rufo, j'ai prévu aussi de l'ajouter, tu veux agir dans le sens inverse, tu sélectionnes une valeur et les curseurs se mettent à jour tout seul. De même, j'ajouterai l'option pour ne pouvoir déplacer les curseurs que de valeurs existantes en valeurs existantes. Pour ce que tu veux faire, faut récupérer la largeur totale de la barre, calculer par règle de trois la largeur relative des trois éléments avec un offset de quelques pixels (qui doivent correspondre de souvenir au rayon des curseurs) puis leur fixer les largeurs calculées. Mais vu comment on est parti avec le Coronavirus, il y a quand même de bonnes chances que je finisse par trouver du temps dans les semaines à venir. Message édité par MaybeEijOrNot le 13-03-2020 à 11:20:00 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Oui, c'est ce que j'ai fait la règle de 3. L'ennui, c'est que sur une plage étendue (grand écart entre la date min et max), avec les arrondis, une fois que j'ai positionné les 2 curseurs sur des dates définies, quand je bouge un des curseurs, ça décale un peu les 2 valeurs et du coup, ça filtre des objets qui ne devraient pas être impacté. J'ai joué avec floor() pour le min et ceil() pour le max, mais bon, ça marche pas à tous les coups.
Message cité 1 fois Message édité par rufo le 13-03-2020 à 15:42:48 --------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least |
--------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Non, ça marchera pas : 9 ans, ça fait plus de 800j (i.e. 800 px). Donc, dans mon cas, 1px = plusieurs jours. C'est normal que ça "bagotte". Toutefois, je pense que ce cas arrivera peu. --------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Cela n'est pas problématique, la fonction inverse met à jour les valeurs et corrige la position, la correction peut très bien être nulle. Cela permet de découpler partiellement. --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
MaybeEijOrNot but someone at least | Bon comme prévu, j'ai du temps en ce moment et j'ai passé mon code en objet (un peu à l'arrache) afin de faciliter l'implémentation de plusieurs instances : https://codepen.io/Perrier_ChouFleur/pen/qBdMVaP
Message édité par MaybeEijOrNot le 24-03-2020 à 17:51:11 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
MaybeEijOrNot but someone at least | Bon j'avance, ça commence à grossir un peu trop, mais tant pis. (codepen updated)
Message édité par MaybeEijOrNot le 24-03-2020 à 17:50:40 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Merci pour ton boulot --------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Ahah, j'avais des problèmes avec les évènements que j'ai trouvé en debuggant autre chose, j'ai passé 2 heures à les retourner dans tous les sens. --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
MaybeEijOrNot but someone at least | Bon j'ai quelque chose qui me plaît, ce n'est pas exactement ce que j'ai dit précédemment car je ne trouve pas ça si pertinent le replacement de la barre avant d'avoir relâcher la souris. Et l'histoire de magnétiser à partir de 1/3 du chemin et non 50 % ne me semble pas si importante dans cette utilisation, voire même trompeuse. De plus, cela redemande pas mal de travail je pense même si ça peut paraître simple, je suis déjà à environ une centaine de lignes de JS.
Message édité par MaybeEijOrNot le 30-03-2020 à 17:57:44 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Pour mon histoire de date, le floor a son importance dans le cas où on a 1px du range qui représente plusieurs valeurs. Je travaille avec des dates sous la forme de timestamp (pour travailler avec des int). Avec le round, je peux me retrouver sur le pixel qui correspond à une valeur > à celle que je veux imposer pour la borne min. Pareil pour la borne max. Du coup, ça filtre plus et mes objets qui ont les dates correspondant exactement aux dates min et max positionnées ne sont pas sélectionnées mais hors de la plage de sélection. --------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Un calendrier pouvant faire défiler les mois et années, affichant les jours du mois, comme le calendrier Windows n'aurait-il pas été plus approprié dans ton cas ?
--------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Moi, j'ai utilisé parseInt().
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Je ne sais plus pourquoi exactement mais le parseInt n'est pas formidable de souvenir, le +variable est ce qui fonctionne le mieux au niveau de la conversion (ça convertit certains exemple qui ne passent pas avec le parseInt). Message édité par MaybeEijOrNot le 24-03-2020 à 23:36:58 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Ca pose peut-être des pbs avec des nombres écrits en hexa ? --------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | C'est moi qui ne suit plus vraiment à jour et qui confond en plus. Depuis ECMA15 il n'y a plus besoin de spécifier la base avec parseInt, avant certains cas ne passaient pas sans spécifier la base, notamment les nombres commençant par un 0 (genre les heures : 3h08). Message édité par MaybeEijOrNot le 25-03-2020 à 13:48:11 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
MaybeEijOrNot but someone at least | Ajout d'un reset : https://codepen.io/Perrier_ChouFleur/pen/qBdMVaP Bon maintenant faut que je réfléchisse à comment tricher pour pouvoir utiliser cette échelle linéaire avec des données qui seraient mieux affichées en non linéaires (tailles de fichiers), donc je peux toujours transformer mes données d'entrée en appliquant un log, mais ça ne règle pas le problème d'affichage des unités. Message édité par MaybeEijOrNot le 31-03-2020 à 01:07:35 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | T'as qu'à faire comme moi avec mes dates (timestemp pour les valeurs, formatage en jj/mm/aaaa pour l'affichage) : tu travailles avec les vraies valeurs en interne (dans ton tableau de valeurs à afficher) et tu utilises le log pour le positionnement du curseur, mais dans les input type "text", tu affiches la valeur formatée en Ko, Mo, Go. --------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | C'est plus ou moins ce que j'ai fait.
Message édité par MaybeEijOrNot le 03-04-2020 à 22:40:28 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | Perso, je te te recommande de tout travailler en nombres (int ou float) et d'ajouter un paramètre au chargement de ta slidebar pour indiquer le format d'affichage des valeurs.
--------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Tu utilises une fonction d'affichage intégrée à la classe de la CustomRange ou en-dehors ?
--------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
rufo Pas me confondre avec Lycos! | J'ai pas utilisé ta classe : je suis resté sur ton code de base non objet. Ce que j'ai modifié dedans fait que tout marche bien donc pour l'instant, je vais rester comme ça. S'il me reste du temps à la fin, j'utiliserai ta classe --------------- Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Planeta Calandreta : https://framalibre.org/content/planeta-calandreta |
MaybeEijOrNot but someone at least | Ah oui donc c'est pour ça, car sinon tu es soit obligé de modifier la classe (pas pratique quand tu crées plusieurs instances) soit de faire comme j'ai fait. Après, le plus drôle m'attend, la fonction de recherche, j'ai gardé le meilleur pour la fin.^^ Message édité par MaybeEijOrNot le 31-03-2020 à 19:46:12 --------------- C'est en écrivant n'importe quoi qu'on devient n'importe qui. |
Publicité | Posté le |
Sujets relatifs | |
---|---|
Création d'un "select" personnalisé | [Aide] Création jeu textuel |
Création site web gestion serveurs minecraft | Création site web gestion serveurs minecraft |
création d'u petit gestionnaire de contacts | création d'u petit gestionnaire de contacts |
Création d'une alarme et gestion du mode veille d'un téléphone | Création d'une liste en SQL |
Création base de données avec Entity code first | |
Plus de sujets relatifs à : Création d'un range personnalisé (fourchette) |