2011-03-19 8 views
12

मेरे पास एक V3 मानचित्र लोडिंग और डिफ़ॉल्ट रूप से किसी विशेष देशांतर/अक्षांश पर केंद्रित है। एक बार लोड हो जाने पर, उपयोगकर्ता उस बिंदु पर दिशानिर्देश प्राप्त करने के लिए अपना पता दर्ज कर सकते हैं। जब ऐसा होता है, तो मानचित्र को बाईं ओर दिए गए दिशा-निर्देश बॉक्स को समायोजित करने के लिए आकार बदल दिया जाता है। इस वजह से, मार्ग मानचित्र विंडो में ऑफ-सेंटर है। मैंने निम्नलिखित कोड की कोशिश की, जिसे मैंने तर्क दिया कि तार्किक रूप से काम करना चाहिए, लेकिन इसका कोई फायदा नहीं हुआ।दिशाओं के बाद रूट पर एक वी 3 Google मानचित्र केंद्र

नई प्राप्ति: यदि मैं किसी भी तरह से विंडो का आकार बदलता हूं, तो यह अपेक्षा के अनुसार काम करना शुरू कर देता है।

मुद्दा मिल गया: मैं मैं नक्शा कंटेनर का आकार बदलने के बाद google.maps.event.trigger(map, 'resize') को गति प्रदान करने की जरूरत है।

directionsService.route(query, function(result,status) { 
    if (status === google.maps.DirectionsStatus.OK) { 
     // This sets the directions container to display:block and resizes the map 
     document.getElementById('map-container').className = "directions"; 
     directions.setDirections(result); 
     var bounds = result.routes[0].bounds; 
     map.fitBounds(bounds); 
     map.setCenter(bounds.getCenter()); 
    } else { 
     alert(""); 
    } 
});
+0

एक बार जब आप फिट कॉल करते हैं तो इसे लैट्लिंगबाउंड के आधार पर केंद्र होना चाहिए, इसलिए आपको सेटर – kjy112

+0

हाँ सेट करने की आवश्यकता नहीं है, मैंने आखिरी खाई प्रयास में सेट सेंटर() जोड़ा। यह इसके साथ या उसके बिना अपेक्षित के रूप में केंद्रित नहीं है। – Justin

+0

पूरी तरह से "आकार बदलें" मानचित्र भाग को गलत तरीके से मिटाना। खुशी है कि यह – kjy112

उत्तर

1

आपको पहले से ही वह उत्तर मिला है जो मैं कह रहा था। जब भी आप नक्शा कंटेनर (या संभवतः इसके माता-पिता) को बदलते हैं तो सही होने के लिए आकार बदलने का कार्यक्रम बहुत महत्वपूर्ण है। मेरे मामले में, मैं दो टैब (मानचित्र और ड्राइविंग दिशाओं) के बीच फिसल रहा था। पहले नक्शा नक्शा टैब में सही ढंग से दिखाई देगा, लेकिन दिशानिर्देशों पर स्विच करने और मानचित्र पर वापस जाने के कारण प्रदर्शन में कमी आएगी।

यदि आपका नक्शा केवल एक कोने में एक छोटा टाइल दिखा रहा है (मेरे मामले में ऊपरी बाएं) बाकी रिक्त मौके के साथ आपको आकार बदलने वाले ट्रिगर को आग लगाना होगा।

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