Значки канцелярской кнопки на карте Bing - PullRequest
2 голосов
/ 21 сентября 2011

Я занимаюсь разработкой веб-приложения с картой Bing. Я использовал этот метод, чтобы изменить значок метки путевой точки:

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();

На сайте я вижу значок с моими пользовательскими значками, но я также хочу изменить значок при наведении (на самом деле я вижу стандартный значок при наведении, синий флаг).

Кто-то знает, как установить пользовательский значок канцелярской кнопки при наведении курсора? Или предотвратить событие mousehover?

Ответы [ 2 ]

2 голосов
/ 26 октября 2012

Попробуйте использовать hoverIcon внутри waypointPushPinOptions примерно так:

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)
        }
});

Это свойство недокументировано . Если Microsoft хочет, чтобы API их карт был более адаптирован, они должны действительно объединить свои усилия, а не платить компаниям за их использование. Очень неряшливо!

0 голосов
/ 26 сентября 2011

Вы можете установить свойство typeName для объекта параметров при создании кнопки.Это устанавливается как имя класса содержащей метки.

Пример - если вы установите typeName в 'waypoint', то в вашем css вы можете иметь:

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

В качестве альтернативы выможет подписаться на события мыши на канцелярской кнопке и в ответ изменить свойство typeName на канцелярской кнопке и применять другие правила CSS (если псевдо-класс: hover не работает)

Надеюсь, что это поможет.

...