我正在使用JQVMAP生成一些美国地图。该插件有一个 onRegionClick 回调。我正在尝试放大到此功能中的单击状态。我有点知道如何通过将返回给我的 SVG 路径 onClick 转换为 viewBox 坐标来做到这一点,但是,我在转换时遇到了问题。这是我到目前为止所拥有的。
<script type="text/javascript">
jQuery(document).ready(function() {
jQuery('#vmap').vectorMap(
{
map: 'usa_en',
backgroundColor: '#a5bfdd',
borderColor: '#818181',
borderOpacity: .50,
borderWidth: 1,
color: '#f4f3f0',
enableZoom: false,
hoverColor: '#c9dfaf',
hoverOpacity: null,
normalizeFunction: 'linear',
scaleColors: ['#b6d6ff', '#005ace'],
selectedColor: '#c9dfaf',
selectedRegion: null,
showTooltip: true,
onRegionClick: function(element, code, region)
{
//$('#vmap > svg')[0].setAttribute('viewBox', vmlPath);
console.log(region.path);
console.log(region.name);
}
});
});
</script>
链接到现场演示。如何将 SVG 路径转换为 viewBox 坐标?我会以正确的方式解决这个问题吗?还是有更好的方法来做到这一点?我的最终目标是放大 onRegionClick 的状态。