2013-09-16 58 views
0

我已經實施瞭解析KML到谷歌地圖的腳本,如described here.還有一個working sample here.的JavaScript解析外部XML/KML - Geoxml3

這在Safari和IE的偉大工程,但沒有發生在Firefox或Chrome上我的安裝(仍然是本地)和演示站點上。在日誌中的唯一的事情是這樣的:

​​

有人能來看看這一點,並提供一些線索?我沒有足夠的精通JavaScript來弄清楚發生了什麼。

謝謝!

更新:這是我的實際代碼。

<!DOCTYPE html> 
<html class="no-js" lang="en"> <!--<![endif]--> 
<head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> 
    <title>Where Are Our Alumni?</title> 
    <meta name="description" content=""> 
    <meta name="viewport" content="width=device-width"> 

    <style type="text/css"> 
    body, html { 
     height: 100%; 
     width: 100%; 
     margin: 0; 
     padding: 0; 
    } 

    div#map-canvas { 
     width: 100%; height: 100%; 
    } 
    </style> 

    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
    <script src="geoxml3.js"></script> 
    <script src="markerclusterer.js"></script> 
    <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 


    <script type="text/javascript" charset="utf-8"> 
     $(document).ready(function(){ 
    var myOptions = { 
      center: new google.maps.LatLng(41.8813571,-87.6294174), 
      zoom: 3, 
      mapTypeId: google.maps.MapTypeId.ROADMAP 
     }; 
     var mcOptions = {gridSize: 50, maxZoom: 15}; 
     var weather_url = "http://api.wunderground.com/api/6d9cb153ba3be6c0/conditions/forecast/q/"; 
     var count = 0; 
     markers = []; 
     var map = new google.maps.Map(document.getElementById("map-canvas"), myOptions); 
     markerclusterer = new MarkerClusterer(map, [], mcOptions); 
     var infoWindow = new google.maps.InfoWindow({maxWidth:800}); 
     var myParser = new geoXML3.parser({ 
     map: map, singleInfoWindow:true, 
     createMarker:function(placemark){ 
       if (placemark.point.lat != '0') { 
       var point = new google.maps.LatLng(placemark.point.lat, placemark.point.lng); 
       var marker = new google.maps.Marker({position:point}); 
       markers.push(marker); 

       google.maps.event.addListener(marker, "click", function(){ 
        var marker_lat = marker.getPosition().lat(); 
        var marker_lng = marker.getPosition().lng(); 
        var request_url = weather_url + (marker_lat + "," + marker_lng); 
        infoWindow.close(); 
        infoWindow.setOptions({maxWidth:800}); 
        content = ("<div><strong>" + placemark.name + "</strong><br>"); 
        content += (placemark.description + "</div>"); 
        infoWindow.setContent(content); 
        infoWindow.open(map, marker); 


       }); 
       markerclusterer.addMarker(marker); 
     } 
    } 
    }); 
     myParser.parse('alumni.kml'); 
     }); 

     function clickMarker(i){ 
      google.maps.event.trigger(markers[i], "click"); 
     } 
    </script> 
</head> 
<body> 

    <div id="map-canvas"></div> 


</body> 
</html> 

的geoxml3.js腳本是什麼引起的錯誤,available from here.

+0

到外部網站的鏈接最終會消失。請發佈實際的代碼。 –

+0

你應該調試你的腳本,看看爲什麼是這種情況 - 圍繞AJAX請求的狀態,看看它爲什麼失敗,或者試圖從它被忽略的一些錯誤信息? – millimoose

+0

你的kml的名字是什麼?您的發佈代碼加載「alumni.kml」,您發佈的鏈接正試圖加載「station.kml」,那麼「station.kml」實際上是否存在於該位置? – geocodezip

回答