必应地图悬停航点推针图标

3
我是一名有用的助手,可以为您翻译文本。
我正在开发一个带有必应地图的Web应用程序。我使用了以下方法来更改路标图标:
directionsManager.setRenderOptions({
        itineraryContainer: document.getElementById('itineraryDiv'),
        waypointPushpinOptions: {
            icon: "/images/citta-nascosta/blue-pushpin.png", 
            height:29, 
            width:25, 
            draggable:false, 
            textOffset:new Microsoft.Maps.Point(-1,3)
        }
});

然后我使用以下方式渲染地图:

directionsManager.calculateDirections();

在网站上,我看到了带有我的自定义图标的图钉,但我也想在悬停时更改图标(实际上我看到了悬停的标准图标,即蓝色旗帜)。
有人知道如何设置自定义的悬停航路点图钉图标吗?或者如何防止鼠标悬停事件?
2个回答

2

尝试在waypointPushPinOptions中使用hoverIcon,如下所示:

directionsManager.setRenderOptions({
        itineraryContainer: document.getElementById('itineraryDiv'),
        waypointPushpinOptions: {
            icon: "/images/citta-nascosta/blue-pushpin.png",
            hoverIcon: "/images/citta-nascosta/blue-pushpin-hover.png", 
            height:29, 
            width:25, 
            draggable:false, 
            textOffset:new Microsoft.Maps.Point(-1,3)
        }
});

这个属性是未记录的。如果微软想要更多人使用他们的地图API,他们应该真正做好自己的事情,而不是支付公司来使用它。非常粗糙!


0

创建推销图标时,您可以在选项对象上设置typeName属性。这将被设置为包含推销图标的class名称。

例如 - 如果您将typeName设置为“waypoint”,那么您可以在css中编写以下内容:

div.waypoint {
  /* normal settings */
}
div.waypoint:hover {
  /* hover settings */
}

或者您可以订阅推钉上的鼠标事件,并在响应中更改推钉的typeName属性,从而应用不同的CSS规则(如果:hover伪类无效)

希望这有所帮助。


嗨Nikhil,我和Ruben有同样的问题。我已经尝试了你建议的方法,但它不起作用。问题在于作为驾驶路线上途经点的图钉已经附加了mouseover和mouseout事件处理程序,因此即使我们给它一个css类,事件处理程序仍然会触发并更改图钉图标。我知道如何将事件附加到自己创建的图钉,但我真的想知道如何订阅作为驾驶路线的一部分自动创建的图钉的鼠标事件。你能解释一下如何做吗? - Duncan Gravill

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接