-1

J'ai codé un Javascript qui initialise une carte Google. Le code fonctionne parfaitement bien en utilisant le navigateur Firefox. J'ai déjà essayé Firebug pour trouver des bugs. Firebug dit que le code est bon. Toutefois, le même code exact ne fonctionne pas si je veux exécuter le script dans le Internet Explorer. Donc je suppose que cela doit être un problème avec l'IE. Le script se casse chaque fois que je veux interagir avec la table de fusion en cliquant sur les couches KML ou en mettant en surbrillance certaines régions en activant un bouton radio.Script Google Maps Erreur pour Internet Explorer

Voici ma fonction initialize:

function initialize(){ 

map = new google.maps.Map(document.getElementById("googleMap"),mapProp); 


var layer = new google.maps.FusionTablesLayer({ 
    query: { 
     select: 'geometry', 
     from: 'XXXX' 
    }, 

     styles: [{ 
     polygonOptions: { 
     fillColor: '#00FF00', 
     fillOpacity: 0.01, 
     strokeOpacity: 0.01} 
    },{ 
    // Objects from the array positive should be colored in a diffrent color 
    where: 'OBJECTID IN (' +pos +positive[positive.length-1].ID +')', 
     polygonOptions: { 
     fillColor: '#00FF00' 
     } 

    },{ 
      where: 'OBJECTID IN (' +pos +positive[positive.length-1].ID +')', 
     polygonOptions: { 
     fillOpacity: 0.5 
     } 
    },{ 

    where: 'OBJECTID IN (' +neg +negative[negative.length-1].ID +')', 
     polygonOptions: { 
     fillColor: '#FF0000' 
     } 

    }, { 
      where: 'OBJECTID IN (' +neg +negative[negative.length-1].ID +')', 
     polygonOptions: { 
     fillOpacity: 0.3 
     } 
}] 
    }); 

google.maps.event.addListener(layer, 'click', function(event) { 
     var msg = event.infoWindowHtml.toString(); 
     var countryName = msg.substr(parseInt(msg.indexOf('Name')), parseInt(msg.indexOf('geometry'))); 
     var CC = event.row['CC'].value 

    for (i = 0; i <countries.length-1; i++){ 
     var CChilf = countries[i].CC; 
      if (CChilf == CC){ 
      msg = countries[i].Name + "<br> Balance: " + countries[i].balance; 
      } 
      else msg = countries[i].Name; 
     } 

     // Change the content of the InfoWindow 
     event.infoWindowHtml = msg; 

     }); 

layer.setMap(map);  
} 

Voici ma tête:

<link href="/apis/fusiontables/docs/samples/style/default.css" 
    rel="stylesheet" type="text/css"> 
<script type="text/javascript" 
    src="http://maps.google.com/maps/api/js?sensor=false"></script> 

<script type="text/javascript"> 

Merci beaucoup à l'avance :)

+1

Avez-vous parlé a) ce que l'erreur est, b) quelle version d'Internet exploseur que vous utilisez sur votre locomotive à vapeur? –

+1

Quelle est l'erreur que vous recevez dans la console? – Joyson

+0

Je suis désolé. C'est la première fois que je cherche un conseil sur une page comme stackoverflow. A) Il n'y a pas de vrai message d'erreur, plus un message d'avertissement: Avertissement de l'API Google Maps: NoApiKeys https://developers.google.com/maps/documentation/javascript/error-messages#no-api-keys Mais je peux Ne comprenez pas pourquoi cela fonctionne bien pour Firefox mais pas pour IE. B) La version d'Internet Explorer est 8. Je sais assez bas mais il n'est pas possible de changer la version. – Nils

Répondre

0

IE 8 is no longer supported for the Google Maps Javascript API v3

Voir the release notes:

support Internet Explorer 8 se termine

31 Août

ici à 2015

Au 31 Août, 2015, Internet Explorer 8 est plus officiellement pris en charge par l'API JavaScript Google Maps. Voir la liste des supported browsers. Pour plus d'informations sur la stratégie de support du navigateur de Microsoft, voir le IEBlog post of August 7, 2014.

(note that IE 9 isn't supported anymore either)

+0

Merci pour le conseil. Le principal problème en dehors de la version IE était que la vue de compatibilité n'est pas supportée pour Google Maps dans IE. – Nils