web-dev-qa-db-fra.com

Quelle est la meilleure action qu'un utilisateur attend lors de l'ajout d'un marqueur sur Google map

Je travaille sur Google maps sur des pages web. Je voudrais permettre à mes clients d'ajouter leur propre emplacement afin qu'ils puissent ajouter des marqueurs sur la carte.

Ma question est, quelle est la meilleure action que l'utilisateur s'attend à cliquer (ou faire) lorsqu'il veut ajouter un marqueur sur la carte?

Juste pour réitérer, je travaille sur le web non mobile.

1
Marco Dinatsoli

Méthode basée sur les clics

Comme vous l'avez mentionné dans votre question, la première façon consiste à déposer un pointeur au clic.

L'option de clic est bien utilisée par Google maps, un clic et un glissement déplacent la carte et un double clic agrandit. Cela signifie qu'il y a des problèmes avec la surcharge de l'événement de clic avec trop de fonctions et qui peut entraîner des problèmes.

Par exemple, l'utilisateur souhaite déplacer la carte mais ne pas mettre à jour son emplacement, mais il abuse de la souris et déclenche un clic, il a ensuite perdu son emplacement d'origine par inadvertance et devra recharger à partir de la base de données (ce qui peut entraîner d'autres problèmes avec non enregistré etc.) ou retrouver la position d'origine du marqueur.

Vous pouvez désactiver les autres options de clic, mais cela pose son propre ensemble de problèmes car la carte devient plus difficile et moins intuitive à utiliser. Vous pouvez également utiliser le clic droit et la méthode de sélection, utilisée par Google Maps.

ne méthode d'interface alternative

Il existe un autre moyen de saisir des données ponctuelles par un utilisateur via une carte. Si vous placez un réticule au centre de la carte et autorisez son zoom et son glissement sous ce marqueur statique, vous pouvez ensuite autoriser l'utilisateur à interagir avec la carte normalement avec des double-clics et des glissements afin de positionner son emplacement en dessous. le réticule, puis enregistrez le point central de la carte comme emplacement.

  • une option pour activer la capacité de glisser est utile si votre utilisateur est susceptible de faire glisser la carte sans réaliser et enregistrer accidentellement un nouvel emplacement, assurez-vous essentiellement qu'il décide explicitement de définir son emplacement avant de le faire. Cela peut ne pas être approprié dans certaines circonstances, par exemple si votre utilisateur crée plusieurs fois des emplacements.
  • pour une précision exacte, faites de votre carte un nombre impair de pixels larges et profonds en vous assurant que la mise au point croisée d'un pixel s'aligne exactement avec le centre de la carte et que l'emplacement signalé est précis.
  • utilisez le rappel de carte qui se déclenche une fois lors de l'arrêt de la traînée plutôt que de se déclencher constamment pendant la traînée pour alléger la charge sur le client.

Le problème avec cette solution par rapport à la première est qu'elle ne permet que l'ajout d'un pointeur par carte, bien que vous puissiez recharger lors de l'enregistrement avec tous les pointeurs précédents marqués et créer une carte de cette manière.

Conclusion

Vous avez le choix de l'option à utiliser. Si vous voulez une méthode simple et intuitive pour ajouter un point et que vous souhaitez éviter les interactions basées sur des clics maladroits, alors la méthode du réticule est la meilleure. Si vous devez ajouter plusieurs points à une même carte en une seule phase d'interaction, la première option, avec des clics droit, est probablement meilleure.

Quelques considérations supplémentaires sur le marquage de points avec Google maps

  • donner la possibilité de supprimer complètement un emplacement de la carte
  • utiliser Google maps recherche de localisation plutôt intelligente qui prendra des codes postaux, des villes, des adresses complètes et même des points de repère et les longitudes de latitude de retour, ce qui dans de nombreux cas fournira une granularité suffisante et supprimera la nécessité de localiser et de marquer complètement
1
Toni Leigh