有没有一种方法可以随意改变本地传单中的标记颜色?我使用的是svg元素,可以进行样式化。我知道使用Mapbox.js是可能的
编辑:为了澄清我打算做的:如果你通过双击或其他方式向地图添加标记,它应该有随机的颜色。为了实现这一点,我想使用svg图标来对标记进行样式化。
这是我的代码:
myIcon = L.icon({
iconUrl: "icon_33997.svg",
iconAnchor: pinAnchor
});
newMarker = L.marker(lat, long], {
icon: myIcon
});
因此,这是谷歌中最受欢迎的传单图标样式之一,但它没有一个没有第三方的解决方案,我在React中遇到了这个问题,因为我们需要动态颜色为我们的路线和图标。
我提出的解决方案是使用leaflet.diviconhtml
属性,它允许您将计算值的字符串传递到DOM元素中。
例如,我创建了一个标记样式,如下所示:
const myCustomColour = '#583470'
const markerHtmlStyles = `
background-color: ${myCustomColour};
width: 3rem;
height: 3rem;
display: block;
left: -1.5rem;
top: -1.5rem;
position: relative;
border-radius: 3rem 3rem 0;
transform: rotate(45deg);
border: 1px solid #FFFFFF`
const icon = Leaflet.divIcon({
className: "my-custom-pin",
iconAnchor: [0, 24],
labelAnchor: [-6, 0],
popupAnchor: [0, -36],
html: `<span style="${markerHtmlStyles}" />`
})
将markerhtmlstyles
中的background-color
更改为您自定义的颜色,就可以使用了。
我很难弄明白为什么传单方法会改变多边形的颜色,而不是我的标记的颜色。 多边形很好: 但是标记不会改变颜色: 我使用Angular和传单一起制作地图(我使用Angular-传单-指令)。 以下是代码的mouseover部分: 当标记get被mouse覆盖时,它会激发,然后尝试调用LeafletEvent.target上的setStyle。我已经安慰了。记录了LeafletEvent,确实有它的目标部
我有一个应用程序,我在谷歌地图上显示附近药店的标记。当我单击标记时,我希望标记更改颜色。当我单击其他标记时,它应该将之前标记的颜色更改为默认颜色,并将更改新标记的颜色。这是随机工作的,我的意思是有时标记颜色会发生变化,有时它会保持默认颜色。 getMarkerIcon()方法的代码是: 注意:我在每一行中都添加了调试器,以查看代码的哪些部分没有运行,奇怪的是,当调试器出现在这一行时 它正在编译,但
我正在使用传单和标记集群插件,我想动态修改从孩子在里面的集群图标。 我的代码可以工作,但不需要我想要的:在iconCreateFunction函数中,我想计算“ClusterBatteriEfaible”的标记,但我不知道如何将其作为参数发送。有什么建议吗?
我创建了一个包含单个项目的菜单。 这是我在工具栏中的一些活动中使用的,单击时它会下拉一个菜单,目前只有一个选项,但将来可能会更多。 除了图标外,一切都很好,它是传统3点白色的矢量图像。根据showAsAction在更改颜色时的设置。 目前show AsAction设置为从不,因此单击时会显示一个菜单,这就是我想要的,但是图标变为深灰色。如果我将此选项设置为“始终”,则图标变为白色,但我丢失了下拉菜
我试图在点击时更改标记的图标编号。我使用的是角度谷歌地图。我正在使用本地资产文件夹而不是服务API设置iNurl。 单击标记时,如何更改上述图标。
我可以知道一种通过Javascript改变谷歌地图标记颜色的方法吗..我是这方面的新手,任何帮助都将不胜感激,谢谢。 我使用以下代码创建标记