begin process at 2012 05 29 11:13:59
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript et le navigateur

 > 

Fonctionnement d'une propriété d'un navigateur

 > 

Google Maps et Safari


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Google Maps et Safari

mercredi 14 juillet 2010 à 16:26:22 | Google Maps et Safari

peplum37

bonjour,
désolé pour la double question, mais je m'étais trompé de forum.

j'utilisa la géolocalisation de google maps V3, tout est ok, sauf avec Safari
car la requète de géolocalisation ne s'effectue qu'une fois (ne fait rien si on recharge la page)
code
Code Javascript :
// -----------------------------------------------
//    Module de géolocalisation
//------------------------------------------------
var directionDisplay;
var directionsService = new google.maps.DirectionsService();
var geocodeur = new google.maps.Geocoder();
var map;
var myLatlng;
var haight;

function afficher() {
        directionsDisplay = new google.maps.DirectionsRenderer();
          var myOptions = {
            zoom: 12,
            center: haight,
            mapTypeId: google.maps.MapTypeId.ROADMAP
            }
        map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
        directionsDisplay.setMap(map);
        var marker = new google.maps.Marker({
            position: haight,
            map: map,
            title:"Salle de Danse"
            });
}

function initialize() {

    haight = new google.maps.LatLng(document.getElementById( 'latitude' ).value,document.getElementById( 'longitude' ).value);
    Nom = navigator.appName;
    Safari= (Nom == 'Netscape') ? 1:0;
    Opera = (Nom == 'Opera') ? 1:0;
    ie = (Nom == 'Microsoft Internet Explorer') ? 1:0;

    if (!ie && !Opera)
    {
    if (navigator.geolocation ) {
        navigator.geolocation.getCurrentPosition(
        function(position)
        {
            myLatlng = new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
        },
        function (msg) { alert( "Localisation impossible", {maximumAge:Infinity, timeout:0} ); }
        );
        }
            document.getElementById( 'demande' ).style.display = 'none';
            document.getElementById( 'auto' ).style.display = '';
            afficher();
      }
        else
      {
            document.getElementById( 'demande' ).style.display = '';
            document.getElementById( 'auto' ).style.display = 'none';
            afficher();
      }
 }
 function rechercher() {

       var vous=document.getElementById( "vous" );
       adresse=vous.value;
       if (geocodeur) {
            // effectuer une requete de geocodage
            geocodeur.geocode({'address': adresse}, function(resultats, status) {
            myLatlng = resultats[0].geometry.location;

            if (status == google.maps.GeocoderStatus.OK) { //requete reussie
                calcRoute();
                } else { //il y'a eu un problem lors de la requete
                    alert("Une erreur s'est produite : " + status);
                }
            });
        }

    }
function calcRoute() {

        if (Safari) {
//           alert('1 '+myLatlng);
            }

        var selectedMode = "DRIVING";
        var request = {
            origin:      myLatlng,
            destination: haight,
            travelMode: google.maps.DirectionsTravelMode[selectedMode],
            unitSystem: google.maps.DirectionsUnitSystem.METRIC
            };
        directionsService.route(request, function(response, status) {
            if (status == google.maps.DirectionsStatus.OK) {
                directionsDisplay.setDirections(response);
            }
            });
}



la fonction navigator.geolocation.getCurrentPosition ne se fait qu'une mois, si bien qu'après rechargement de la page la variable myLatlng est "undefined"

merci pour un conseil
lundi 19 juillet 2010 à 19:08:04 | Re : Google Maps et Safari

PetoleTeam

Membre Club
Réponse acceptée !
Bonjour,
pourquoi ces lignes
Code Javascript :
Safari= (Nom == 'Netscape') ? 1:0;
Opera = (Nom == 'Opera') ? 1:0;
ie = (Nom == 'Microsoft Internet Explorer') ? 1:0;

tu utilises navigator.geolocation,pas sur que tu retrouves cette propriété dans le navigateur

Je te livre une source d'inspiration GÉOLOCALISATION D'UNE ADRESSE
;O)
mardi 20 juillet 2010 à 08:57:35 | Re : Google Maps et Safari

peplum37

petole team :
d'abord merci d'avoir regardé mon problème.
l'identification du navigateur me sert à saisir l'adresse dans un formulaire si le navigateur ne géolocalise pas automatiquement (ie opera).
en fait j'ai résolu mon problème en créant un cookie sous Safari car il ne géolocalise que la première fois.


Cette discussion est classée dans : function, var, document, google, maps


Répondre à ce message

Sujets en rapport avec ce message

Tableau 2D [ par malik7934 ] Hello, En deux mots: j'ai fais ça: http://noisy.ch/smilies/smilies2.html mais je n'y connais rien à Javascript (c'est pour un chat en php). J'ai modi ajax/xmlhttprequest [ par David_monchy ] salut à tous,je développe un chat, et j'ai un problème: j'utilise une liste de connectés qui affiche en 'temps reel' les membres connectés. Seulement, Player multi format sécuriter java & php [ par c2bomb ] bonjour a tous,je cherche a afficher mon player,dans une fenetre style popup,mais hélas je suis vraiment nulle en javascript...si quelq'un peut m'aide chrono [ par comrad85 ] salut a tous!!je suis nouveau sur le site!! je debute en javascript.voila j'ai essayé de faire un chrono et j'aimerai bien avoir une petite aide pour explorateur de fichiers [ par Sven666 ] Bon voilà une journée que je cherche sans succès...Je ne pose jamais de questions mais là j'avou etre perdu.Mon probleme est que je cherche a ouvrir u Pb de validation d'un formualaire [ par HovOne ] Bonsoirje souhaite valider ce formulaire html/php via un script en JS[quote]        "http://www.w3.org/TR/2000/REC-xhtml1-2 modification lightbox .... bouton close en haut a droite [ par petardier ] bonjour,je souhaite modifier une light box en mettant le bouton close en haut a gauche , plutot qu'en bas.Ainsi, quand une image est plus grande que l Variable retour de function [ par bydouille ] Bonjour, Je désire faire et utiliser une function qui me renvoie le contenu d'une ligne de tableau (3 cellules) avec comme id : cell-1, cell-2, cell- API GOOGLE MAP [ par tropik34 ] bONJOUR ya kek chose qui cloche dans ce script. La map ne s'affiche pas. Une idée Merci [code=html] <html xmlns="http://ww L'élément document et le reste... [ par alexflex25 ] Bonjour, En désespoir de cause je viens vous demander de l'aide une n-ème fois. Soit la class javascript suivante : [code=js] var alerting = Class.cr


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 2,075 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales