Javascript 有没有办法使SVG对象可单击?
我正在使用可在此处查看的SVG:Javascript 有没有办法使SVG对象可单击?,javascript,svg,Javascript,Svg,我正在使用可在此处查看的SVG: 我只想发布SVG,但由于街道地图层,文件非常大。但是,如果单击链接,您可以看到这是一个划分为18个不同svg路径的地图,其中有许多不同的颜色对它们进行着色。我使用这张地图的目标是让18个不同部分中的每一个都可以点击,或者给它们一个在谷歌上搜索时发现了这个jQuery插件,用于装饰图像地图,可以帮助您实现目标: 您可以非常轻松地处理它,方法是向每个元素添加数据属性,然后通过jquery或javascript处理它 首先,添加类似于dataurl=”的内容http:
我只想发布SVG,但由于街道地图层,文件非常大。但是,如果单击链接,您可以看到这是一个划分为18个不同svg路径的地图,其中有许多不同的颜色对它们进行着色。我使用这张地图的目标是让18个不同部分中的每一个都可以点击,或者给它们一个
在谷歌上搜索时发现了这个jQuery插件,用于装饰图像地图,可以帮助您实现目标:
您可以非常轻松地处理它,方法是向每个
元素添加数据属性,然后通过jquery或javascript处理它
首先,添加类似于dataurl=”的内容http://your-url.com“
到
元素。示例:
在关闭
标记之前添加jquery库,步骤3中的脚本如下所示:
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script>
//your script
</script>
</body>
</html>
测试它:
在我看来,最好的解决方案是SVG元素
您可以编辑您的问题以显示如何绘制svg图像吗?确实如此!谢谢@milesgrimes您能手动编辑
元素吗?因此,您可以为每个分区指定一个id=“zone1”
?是的,@Frondor。事实上,这就是我最初编写代码的方式,根据该区域的收入信息更改填充:-)我有一个解决方案,但它基于jquery。。您可以使用jquery还是只喜欢纯javascript?@n1c9如果您在我上次编辑之前试图实现这个问题,请看一下代码,它有一点变化:)我希望您知道如何处理像jquery这样的javascript库:-)但感谢您给我另一个了解更多的借口,谢谢你的回答!完美的谢谢,@kaido!
$(document).ready(function(){
$('path').on('click', function(e){
e.preventDefault();
var url = $(this).data('url');
console.log('Moving to:', url);
window.open(url, '_blank');
});
});