2012-10-23 5 views
0

Bit d'un étrange - J'ai créé une zone google maps pour une page de contact sur un site sur lequel je travaille. Tout a bien fonctionné, le tour est joué, etc. Je suis retourné pour changer d'autres choses sur la page aujourd'hui et l'icône a complètement disparu. La carte génère toujours et affiche bien - seule l'icône est manquante. Mon chemin img est toujours correct et rien d'autre n'a changé. Je semblais me souvenir vaguement de ce qui se passait lors de la construction originale, mais il s'est peut-être arrangé. Est-ce que quelqu'un d'autre est tombé sur des choses semblables?google maps api ajouter une icône personnalisée

Mon JS pour la carte est ici - Lorsque je change délibérément de variable inexistante ou non valide, la carte ne va pas générer, donc je ne suis pas entièrement certain que c'est une erreur avec ce code.

toute aide serait massivement appréciée. Merci,

<script type="text/javascript"> 
    function initialize() { 
     var latlng = new google.maps.LatLng(51.865151,-2.234739); 
     var settings = { 
      zoom: 16, 
      center: latlng, 
      mapTypeControl: true, 
      scrollwheel: false, 
      mapTypeControlOptions: {style: google.maps.MapTypeControlStyle.DROPDOWN_MENU}, 
      navigationControl: true, 
      navigationControlOptions: {style: google.maps.NavigationControlStyle.SMALL}, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
    }; 

    var map = new google.maps.Map(document.getElementById("map_canvas"), settings); 
    var companyLogo = new google.maps.MarkerImage('img/gmap-icon.png', 
    new google.maps.Size(100,50), 
    new google.maps.Point(0,0), 
    new google.maps.Point(50,50) 
); 
     var companyPos = new google.maps.LatLng(51.865151,-2.234739); 
     var companyMarker = new google.maps.Marker({ 
    position: companyPos, 
    map: map, 
    icon: companyLogo, 
    title:"10 Yetis HQ" 
}); 

    } 

</script> 

Répondre

1

Je fait face à une situation similaire comme cela, essayez de changer chemin d'icône directement sur le chemin physique

Icon: "images/greymarker.png" 

ou bien vous pouvez même utiliser

companyMarker.setIcon("images/bluedot.png"); 

Hope this helps : D

1

Je pense que vous avez un problème avec le cache du navigateur. Effacer votre cache à chaque fois pour faire un changement de vous verrez une version mixte des changements. De plus, comme vous utilisez JavaScript, la plupart des chemins ne sont pas relatifs. Essayez d'utiliser des URL absolues. Par exemple:

var companyLogo = new google.maps.MarkerImage('/img/gmap-icon.png', ...); 
0

merci à vous deux pour les réponses :) malheureusement c'était quelque chose de plus simple. Mon JS était en cours d'exécution avant que mon dvi ait été rendu dans le DOM - J'ai remarqué quelques erreurs dans la console JS sur Chrome et je l'ai trié. Merci à vous deux!!

Questions connexes