2013-03-26 4 views
13

मैं विशिष्ट क्षेत्र मानचित्र onRegionClick लोड करने का प्रयास कर रहा हूं। हालांकि ऐसा लगता है कि परिवर्तन के बाद क्षेत्र लोड हो रहा है।क्षेत्र पर एक और jvectormap लोड करें

function switchMap(code) { 
    $.getScript('maps/'+ code +'.js'); 
    $('#map').vectorMap({map: code}); 
} 

$('#map').vectorMap({ 
    map: 'world_mill_en', 
    onRegionClick: function(event, code) { 
     if (code == "CA") {switchMap(code)} 
     if (code == "AF") {switchMap(code)} 
     if (code == "AL") {switchMap(code)} 
     if (code == "AR") {switchMap(code)} 
     if (code == "CH") {switchMap(code)} 
    } 
}); 

कंसोल आउटपुट यह है:: यहाँ मेरी कोड है

Uncaught Error: Attempt to use map which was not loaded: CA world-map.js:82 

OPTIONS file:///C:/Users/D-4/Desktop/find-a-bible/maps/CA.js?_=1364318443130 jquery-1.8.2.js:8416 
+0

चेक अगर आप अपने पेज में jQuery-jvectormap-हमें-मिल-en.js "> है नक्शा वस्तु प्राप्त कर सकते हैं। –

उत्तर

4

आदेश switchMap समारोह का उपयोग करने के लिए आपको, के बाद फ़ाइल पूरी तरह से लोड किया गया था नई vectorMap प्रारंभ करना चाहिए इस प्रकार एक में यह intializing वापस कॉल करें। ।

function switchMap(code) { 
    $.getScript('maps/'+ code +'.js' , function (data){ 
     $('#map').vectorMap({map: code}); 
    }); 
} 
1

आपको मानचित्र को उचित रूप से प्रस्तुत करने के लिए केवल ऊंचाई या चौड़ाई की चौड़ाई डालना चाहिए। jvectormap नक्शा पहलू अनुपात को बनाए रखने के लिए स्वचालित रूप से अनुपलब्ध आयाम की गणना करेगा। यदि आप जावास्क्रिप्ट का उपयोग करके गतिशील रूप से ऊंचाई बदल रहे हैं, तो सुनिश्चित करें कि आप अपने मानचित्र ऑब्जेक्ट पर updateSize पर कॉल करें। ध्यान दें कि आप का उपयोग कर इस var mapObject = $('#world-map-gdp').vectorMap('get', 'mapObject'); तो फोन mapObject.updateSize();

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