IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Modification d'un script


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2008
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2008
    Messages : 20
    Points : 12
    Points
    12
    Par défaut Modification d'un script
    Bonjour a tous et a toutes.

    Je serait bref et aussi clair que possible.

    j'ai ceci.

    Je souhaite modifier le script pour qu'au lieu de devoir cliquer sur chaque case pour modifier ma carte, je maintienne le clic enfoncé, puis 'glisse' sur les case pour 'tracer un trait' de l'image choisie.

    Je ne sais pas comment réaliser cette modification, quelqu'un serait il en mesure de m'aider ?

  2. #2
    Expert éminent
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 094
    Points : 6 755
    Points
    6 755
    Par défaut
    Salut,
    voilà un problème intéressant

    L’idéal tout d’abord ce serait que tu utilises des gestionnaires d’évènements, ça t’éviterait d’avoir du JavaScript dans le code HTML.
    En plus, les gestionnaires te permettent de faire de la délégation, c’est-à-dire surveiller un conteneur au lieu de surveiller chacun de ses éléments enfants (en l’occurence, surveiller la map entière au lieu de devoir surveiller chaque tile séparément).
    Enfin c’est juste un conseil.

    Pour faire ce que tu cherches à faire, je pense que la meilleure solution est de surveiller le mousemove sur ta map, et de garder en mémoire un flag qui indique si le bouton de la souris est enfoncé ou non. (J’ai vérifié, on n’a pas l’info avec un évènement « move ».)

    Plus techniquement :
    mousedown sur la map -> mettre le flag à true
    mouseup sur tout le document -> mettre le flag à false
    mousemove sur la map -> si le flag est true, changer la case, sinon ne rien faire
    click sur la map -> changer la case, sinon ça ne marchera pas si on clique simplement sans bouger.

    C’est important de surveiller le mouseup sur tout le document car l’utilisateur peut être sorti de la map en allant trop vite.

    Enfin, il est important d’empêcher le comportement par défaut du navigateur lors d’un mousemove avec le bouton enfoncé, pour éviter les interférences : sélection de texte, glisser/déposer de Firefox (je comprends pas à quoi il sert d’ailleurs…), etc.


    J’ai fait quelques tests que tu trouveras dans le petit zip ci-joint. J’y ai mis des commentaires explicatifs, mais si tu as besoin de précisions, je suis dispo !

    Fichiers attachés Fichiers attachés

Discussions similaires

  1. modification d'un script
    Par snoopy59110 dans le forum Général JavaScript
    Réponses: 13
    Dernier message: 26/06/2007, 15h48
  2. modification d'un script
    Par kaukos dans le forum Langage
    Réponses: 3
    Dernier message: 16/05/2007, 11h14
  3. Modification d'un script
    Par tom06440 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 14/09/2006, 16h28
  4. Modification d'un script
    Par renaud26 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 19/08/2006, 11h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo