navigator.la géolocalisation.getCurrentPosition fonctionne parfois parfois ne pas

J'ai donc une assez simple, peu de JS en utilisant le navigateur.la géolocalisation.getCurrentPosition jammy.

$(document).ready(function(){
  $("#business-locate, #people-locate").click(function() {
    navigator.geolocation.getCurrentPosition(foundLocation, noLocation);
  });

  navigator.geolocation.getCurrentPosition(foundLocation, noLocation);

  function foundLocation(position) {
    var lat = position.coords.latitude;
    var lon = position.coords.longitude;
    var userLocation = lat + ', ' + lon;
    $("#business-current-location, #people-current-location").remove();
    $("#Near-Me")
      .watermark("Current Location")
      .after("<input type='hidden' name='business-current-location' id='business-current-location' value='"+userLocation+"' />");
    $("#people-Near-Me")
      .watermark("Current Location")
      .after("<input type='hidden' name='people-current-location' id='people-current-location' value='"+userLocation+"' />");
  }
  function noLocation() {
    $("#Near-Me").watermark("Could not find location");
    $("#people-Near-Me").watermark("Could not find location");
  }
})//end DocReady

Fondamentalement ce qui se passe ici est que nous obtenons la position actuelle, si elle est obtenue, deux "filigranes" sont placés dans deux domaines qui disent "Position Actuelle" et de deux champs cachés sont créés avec la lat-long les données que leur valeur (ils sont supprimés au début pour ne pas se dupliqué à chaque fois). Il y a aussi deux boutons qui ont une fonction de clic lié à eux qui font la même chose.
Malheureusement, à chaque tiers temps ou alors, il fonctionne.
Quel est le problème ici???

  • Peut-être définir les fonctions avant de les utiliser.
  • qui ne devrait pas d'importance, car le JS analyseur recherche ces déclarations avant le code commence l'exécution d'
  • Est-il possible que l'utilisation de jQuery dans il est à l'origine des problèmes?
  • Que voulez-vous dire lorsque vous dites qu'il ne fonctionne pas parfois? Est le noLocation fonction appelée? Si oui, vous pouvez ajouter un error paramètre noLocation() et puis error.code et error.message peut vous aider au débogage. Il pourrait également nous aider à savoir quel navigateur vous utilisez et si vous voyez le même problème dans les différents navigateurs.
  • Je veux dire que, parfois, il me donne la lat-lon, et parfois ça ne marche pas. quand ça ne fonctionne pas, il n'a même pas jeter le "ne pouvait pas trouver un emplacement" message de sorte que le noLocation peu n'est-ce pas de tir soit.
  • Donc je suppose que personne ne sait.....
  • liés à la question stackoverflow.com/q/5947637/194609
  • Vous n'êtes pas définir toutes les options. Essayez geolocator.js - github.com/onury/geolocator