我正在尝试加载特定的区域地图onRegionClick。但是,在进行更改后,区域似乎正在加载。下面是我的代码:
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发布于 2014-07-28 21:05:35
为了使用switchMap函数,必须在文件完全加载后初始化新的vectorMap,从而在回调中初始化它。。
function switchMap(code) {
$.getScript('maps/'+ code +'.js' , function (data){
$('#map').vectorMap({map: code});
});
}发布于 2015-01-06 22:42:54
您应该只放置div的高度或宽度,以便正确渲染贴图。jvectormap将自动计算丢失的维度,以保持地图的纵横比。如果您使用javascript动态更改高度,请确保在地图对象上调用updateSize。请注意,您可以使用此var mapObject = $('#world-map-gdp').vectorMap('get', 'mapObject');获取地图对象,然后调用mapObject.updateSize();
https://stackoverflow.com/questions/15643677
复制相似问题