好吧,我有一个谷歌地图应用程序,我从 html 中读取 svgs,然后用它们制作标记。但现在的问题是标记附带的透明度也是可点击的,现在这在紧密的集群中产生了问题。所以我的问题是,除了在谷歌地图标记中使用“path:”而不是“url:”之外,是否可以仅使具有路径的标记部分而不是整个区域可点击。
所以目前:
//gets it from my html and treats it like a path
var iconUrl = "data:image/svg+xml;charset=utf-8," + escape(document.getElementById("builtMarker").innerHTML);
var sizeX = 160;
var sizeY = 140;
//make my custom icon
var icon = {
url: iconUrl,
scaledSize: new google.maps.Size(sizeX, sizeY),
anchor: new google.maps.Point(sizeX / 2, sizeY / 2)
};
loc = new google.maps.LatLng(63.68212926717004, -99.33484864981511);
marker = new google.maps.Marker({
position: loc,
map: map,
draggable: false,
icon: icon,
zIndex: -20,
});
Run Code Online (Sandbox Code Playgroud)
https://jsfiddle.net/y8yj86og/3/
因此,如果你看一下小提琴,“悬停”手在实际到达图标之前会发生变化,我的 svg 标记非常复杂,并且大小会根据参数而变化,因此更改视图框大小将导致它在我制作时被切断一个更大的图标。还有其他方法可以解决这个问题吗?就像将视图框大小设置为自动或其他什么的方法