5

पर फ़ंक्शन नहीं कर रहा है मेरे पास मार्कर क्लास्टर लाइब्रेरी को मेरे Google मानचित्र के लिए काम करने का प्रयास करने के लिए निम्न कोड है लेकिन किसी कारण से यह कुछ भी नहीं बदलता है। मेरे पास लूप के लिए कुछ जिन्जा 2 है लेकिन यह सब ठीक से काम कर रहा है। क्या आप कोई त्रुटि देख सकते हैं?Google मानचित्र मार्कर क्लस्टरर

<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
     <style type="text/css"> 
      html { height: 100% } 
      body { height: 100%; margin: 0; padding: 0 } 
      #map_canvas { height: 100% } 
     </style> 
     <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?key=AIzaSyD-pLsocZXv5mYwJsSxMghJncxa6iklFUU&sensor=false"></script> 
     <script type="text/javascript" src="/static/js/markerclusterer.js"></script> 
     <script type="text/javascript"> 

    var map;  

    function initialize() { 

     var centerlocation = {{centerlocation|json_encode|safe}}; 
     var LatLng = centerlocation.replace("(", "").replace(")", "").split(", ") 
     var Lat = parseFloat(LatLng[0]); 
     var Lng = parseFloat(LatLng[1]); 

     var zoomAmt = 10; 


     var USA = new google.maps.LatLng(Lat, Lng); 
     var mapOptions = { 
     zoom: zoomAmt, 
     center: USA, 
     mapTypeId: google.maps.MapTypeId.TERRAIN 
     }; 
     map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions); 

    // Global var 
     var infowindow = new google.maps.InfoWindow(); 

    //markers array 
    var markers = []; 

    //put all the markers on the map 
    {% for location in locations %} 

    //need to do the JSON encoding because JavaScript can't have Jinja2 variables 
    //I need the safe here because Jinja2 tries to escape the characters otherwise 
    var GPSlocation = {{location.GPSlocation|json_encode|safe}};  
    var LatLng = GPSlocation.replace("(", "").replace(")", "").split(", ") 
    var Lat = parseFloat(LatLng[0]); 
    var Lng = parseFloat(LatLng[1]);  

    var markerLatlng = new google.maps.LatLng(Lat, Lng); 
    var title = {{location.title|json_encode|safe}} 
    var iwContent = {{location.render_front()|json_encode|safe}} 

    var marker = new google.maps.Marker({ 
      position: markerLatlng, 
      title: title, 
      map: map 
     }); 

    google.maps.event.addListener(marker, 'click', function() { 
     infowindow.setContent(iwContent); 
     infowindow.open(map, marker); 
     }); 

    //putting the marker onto the markers array 
    markers.push(marker); 


    {% endfor %} 

    //creating the marker cluster 
    var markerCluster = new MarkerClusterer(map, markers); 

    } 

    </script> 

जैसा कि मैंने कहा था कि मार्कर क्लस्टरर को कॉल करने के बाद मानचित्र सामान्य दिखता है।

+0

यदि आप मानचित्र ज़ूम करते हैं तो यह क्लस्टर करता है? क्लस्टरिंग के साथ यहां एक [कामकाजी उदाहरण] (http://www.geocodezip.com/v3_MW_example_map3_clustered.html) है। – geocodezip

उत्तर

6

ऐसा लगता है कि आपको मार्कर से {map: map} संपत्ति को निकालने की आवश्यकता है।

यहां क्लस्टरिंग के साथ working example है।

क्रोम में

त्रुटियाँ Javascript कंसोल on this page:

  • Uncaught ReferenceError: GOverlay परिभाषित नहीं है markerclusterer.js: 630
  • Uncaught ReferenceError: मार्कर
  • परिभाषित नहीं है

पहले निकलता है आप कर रहे हैं मार्करक्लस्टरर स्क्रिप्ट के गलत संस्करण का उपयोग करके (गोवरले Google मानचित्र एपीआई v2 से है)

यदि मैं सही मार्करक्लस्टर के साथ your code का उपयोग करता हूं और मार्कर सरणी घोषित करता हूं, क्लस्टरर काम करता है, लेकिन आपको मार्कर के साथ InfoWindow सामग्री के सहयोग के साथ समस्याएं हैं (जिसे CreateMarker फ़ंक्शन के साथ ठीक किया जा सकता है)।

Here एक ऐसा उदाहरण है जो मार्करों के एसोसिएंडो को हल करने के लिए CreateMarker फ़ंक्शन का उपयोग करता है। यह आपके कोड से आधारित है, लेकिन सुधार के लिए जगह है (आपके कोड में बहुत सी अनावश्यकता है)।

+0

अच्छी तरह से कुछ किया लेकिन अब उनमें से कोई भी दिखा रहा है ... – clifgray

+0

मैं लाइव संस्करण के लिंक के बिना आपके कोड का परीक्षण नहीं कर सकता (क्योंकि यह PHP का उपयोग कर रहा है)। क्या आप समस्या उत्पन्न कर सकते हैं जो एक jsfiddle बना सकते हैं? या उस कोड में समस्या को दोहराएं जिसे पोस्ट किया जा सकता है। क्या आपको जावास्क्रिप्ट त्रुटियां मिल रही हैं? – geocodezip

+0

यहां लाइव उदाहरण है: http://www.exployre.com/map मैं अपनी dev मशीन – clifgray

संबंधित मुद्दे