2012-04-07 139 views
4

我正在使用jVectormap插件在世界地图上突出显示国家。现在正如我的问题表明,当特定的国家被徘徊时,我想显示国家的国旗。当在特定国家徘徊时突出显示国家国旗在空白世界地图上

我不想为整个世界地图做图像映射。所以不要发布该解决方案,我不认为它是一个可行的解决方案,因为我没有这样的时间来做到这一点。

如果有人使用任何插件,svg,谷歌地图,任何人都可以帮我解决这个问题。

如果有任何付费插件有,那么我想知道。我搜索了2天。但我还没有遇到过这样的功能。

+0

的可能的复制http://stackoverflow.com/questions/9945265/add -click-event-on-an-embedded-svg-in-javascript – Jlange 2012-04-09 16:04:51

回答

6

您可以提供onRegionLabelShow的功能,该功能使用区域code构建国家/地区标志的URL,然后自定义label

$(function() { 
    $('#map').vectorMap({ 
     onRegionLabelShow: function(event, label, code) 
     { 
      label.html(label.html()+ 
      '<br><img src="'+getFlagImgSrc(code)+'" height="20">'); 
     } 
    }); 

    /* 
    * Constructs a URL for a country flag image on Flags Of The World 
    * using the ISO-3166 Digraph 
    */ 
    function getFlagImgSrc(code) 
    { 
     return 'http://www.fotw.us/images/'+ 
       code.toLowerCase().substring(0,1)+ 
       '/'+ 
       code.toLowerCase()+ 
       '.gif'; 
    }  

});​ 

的渲染标签的外观与该国国旗的一个例子,当你鼠标放在一个区域:

enter image description here

+0

不好意思,你也可以看看这个问题吗?http://stackoverflow.com/questions/38672204/jvector-map如何有动态图像时标记悬停 – 2016-07-31 10:06:13

+1

函数'onRegionLabelShow'在v2.0 +中被重命名为'onRegionTipShow' – MarcGuay 2016-10-27 16:23:43