Google Maps API v3 de Géolocalisation ne fonctionne pas sous Google Chrome
Je suis en utilisant Google Maps API v3 de Géolocalisation pour obtenir les utilisateurs de l'emplacement réel. J'ai trouvé ce post sur les Développeurs de Google:
https://developers.google.com/maps/documentation/javascript/examples/map-geolocation
Voici mon code (ce qui correspond au code de Google Maps exemple):
<head>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=true"></script>
<script>
//Note: This example requires that you consent to location sharing when
//prompted by your browser. If you see a blank space instead of the map, this
//is probably because you have denied permission for location sharing.
var map;
function initialize() {
var mapOptions = {
zoom: 6,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
//Try HTML5 geolocation
if(navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function(position) {
var pos = new google.maps.LatLng(position.coords.latitude,
position.coords.longitude);
var infowindow = new google.maps.InfoWindow({
map: map,
position: pos,
content: 'Location found using HTML5.'
});
map.setCenter(pos);
}, function() {
handleNoGeolocation(true);
});
} else {
//Browser doesn't support Geolocation
handleNoGeolocation(false);
}
}
function handleNoGeolocation(errorFlag) {
if (errorFlag) {
var content = 'Error: The Geolocation service failed.';
} else {
var content = 'Error: Your browser doesn\'t support geolocation.';
}
var options = {
map: map,
position: new google.maps.LatLng(60, 105),
content: content
};
var infowindow = new google.maps.InfoWindow(options);
map.setCenter(options.position);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="container">
<div class="entry-content">
<div class="blogtitle">IT</div><p> </p></td><td> </td><td><p> </p></td></tr></tbody></table><p> </p>
<div id="map-canvas"></div><!-- map-canvas end -->
</div><!-- entry-content end -->
</div><!-- container end -->
</body>
Cela fonctionne très bien dans Firefox, mais pas dans Google Chrome & Safari. Je pense que parce que Chrome & Safari sont les navigateurs webkit. Mais je ne sais pas comment le résoudre.
Quelqu'un peut-il m'aider?
ce que peu qu'il ne fonctionne pas? Vous ne voyez pas la carte, vous n'êtes pas en mesure d'obtenir l'emplacement de l'utilisateur, vous obtenez une erreur javascript?
Il y a une petite erreur:
Il y a une petite erreur:
Error: The Geolocation service failed.
et ensuite le marqueur de points dans une forêt quelque part en Russie (je suis en Suisse...)OriginalL'auteur Tyler | 2013-10-25
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé cette
J'ai testé votre code avec un serveur local et il fonctionne très bien.
J'espère que je pourrais aider.
Dépend de l'OS que vous utilisez. J'utilise MAMP (mamp.info) pour OSX. Si vous êtes à l'aide de Windows découvrez XAMP. Il suffit de mettre votre code html/php/css/que ce soit des fichiers dans le répertoire htdocs et démarrer le serveur. Voici une petite FAQ pour MAMP (mamp.info/en/documentation/faq.html)
Tu veux dire XAMPP? Je suis à l'aide de windows. Dans mon entreprise, nous n'utilisons pas de XAMPP. Nous utilisons IIS. Vous savez comment l'hôte de cette façon?
Oui, je voulais dire XAMPP. Je n'ai aucune idée sur les services internet. Juste donner XAMPP l'essayer, c'est très simple et facile à utiliser!
Je sais déjà XAMPP. Je l'utilise à la maison pour créer des site web de test (juste pour améliorer mon code HTML/HTML5,CSS/CSS3 et jQuery compétences). Mais dans notre société, ils ne veulent pas l'utiliser XAMPP car ils utilisent de l'IIS de nombreuses années avant 🙂 Mais merci d'avoir essayé de m'aider, je pense que je vais le découvrir et poster la solution ici 🙂
OriginalL'auteur zitscher
Essayez d'utiliser L'API de géolocalisation HTML5à la place de Google Maps pour les navigateurs que vous rencontrez des problèmes avec.
Vous pouvez trouver la référence ici
OriginalL'auteur tuned