繁体   English   中英

在Google Maps API v3中未正确触发矩形的鼠标悬停和鼠标移出

[英]Mouseover and mouseout for rectangle are not fired correctly in Google Maps API v3

我有一张地图,并在上面绘制了一个矩形。 这就是我想要的:每当鼠标进入该矩形时,打开一个信息窗口,当鼠标离开时,关闭信息窗口。

我已经成功创建了地图并绘制了一个矩形。 这是我的代码:

var map;
function initialize() {

    // Init map
    var mapOptions = {
        center: { lat: ***, lng: *** },
        zoom: 13,
        draggable: false,
        scrollwheel: false,
        zoomControl: false,
        streetViewControl: false,
        mapTypeControl: false,
        disableDoubleClickZoom: true
    };
    map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);

    google.maps.event.addListenerOnce(map, 'bounds_changed', function () {
        drawGrid();
    });

} // end initialize

function drawGrid() {
    var rectangle = new google.maps.Rectangle({
        strokeColor: '#000',
        strokeWeight: 2,
        fillOpacity: 0,
        map: map,
        bounds: new google.maps.LatLngBounds(sw1, ne1) //sw1 and ne1 is my variable
    });
    var infowindow = new google.maps.InfoWindow({
        content: "Hello",
        position: rectangle.getBounds().getCenter()
    });

    google.maps.event.addListener(rectangle, 'mouseover', function () {
        infowindow.open(map);
    });

    google.maps.event.addListener(rectangle, 'mouseout', function () {
        infowindow.close();
    });
}

google.maps.event.addDomListener(window, 'load', initialize);

您可以在下面看到结果。 矩形是黑色的。 我的结果

现在,问题是:

  1. 仅当我让鼠标跟随绿色箭头时,才会触发Mouseover事件。
  2. 仅当我的鼠标跟随绿色箭头(是,从外到内,而不是按预期的内到外)时,才会触发Mouseout事件,并且触发了两次

为什么会遇到这些问题? 我做错了什么? 如何解决这个问题呢? 非常感谢你的帮助。

Firefox 39.0处理鼠标事件的方式发生了变化。 在问题跟踪器中查看问题8278

Project Member #4 enoch...@google.com
Thanks for reporting this issue. Indeed, it appears that Firefox 39 has made changes to its mouse event, which is causing the API to behave incorrectly.
Status: Accepted 
Owner: enoch...@google.com 
Labels: Internal-20820906

请注意,用户报告说v = 3(发行版)正常工作,并且此问题仅出现在v = 3.exp(“实验”版)中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM