将鼠标单击和鼠标悬停事件附加到Bing地图图钉不起作用

时间:2012-06-11 10:10:13

标签: javascript bing-maps

我在地图上有多个引脚,每个引脚都有两个与之关联的事件(鼠标单击和鼠标悬停)。但只有鼠标悬停才会发射而不是点击。以下是我正在使用的代码。

//Creating the pushpin
var pin = new Microsoft.Maps.Pushpin(loc);
    pin.Description = "Some address";

    Microsoft.Maps.Events.addHandler(pin, 'mouseover', function(e){
         if (e.targetType == 'pushpin') {
         self.bingInfobox.setLocation(e.target.getLocation());
         self.bingInfobox.setOptions({
             visible: true, title: e.target.Title, description:  e.target.Description });
           }       
    });

    Microsoft.Maps.Events.addHandler(pin, 'click', function(e){
         if (e.targetType == 'pushpin') {

           // some functionality..
         }   
    });

请建议..

1 个答案:

答案 0 :(得分:0)

4年......可耻没有人回答。

基本上,mouseover事件正在触发,并且您的信息框正在弹出。它可能会突然出现 over

所以,当你点击时,你点击了信息框而不是针脚本身,所以没有针点击事件发射。

根据地图上发生的情况,可以选择多种选项来解决问题:

确保引脚层z-index高于信息框图层(当然,信息框最终可能部分隐藏在图层中的其他引脚后面。)

在信息框选项中添加一个偏移量,将其从引脚上移开。

自定义您的信息框,以便您可以控制它的外观和位置 - 确保点击时可以看到该针。

其他选择我敢肯定。然而,至少,重叠很可能是问题的根源。