Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google maps api 3 如果谷歌地图信息窗口覆盖了其他窗口,如何捕捉它?_Google Maps Api 3_Infowindow - Fatal编程技术网

Google maps api 3 如果谷歌地图信息窗口覆盖了其他窗口,如何捕捉它?

Google maps api 3 如果谷歌地图信息窗口覆盖了其他窗口,如何捕捉它?,google-maps-api-3,infowindow,Google Maps Api 3,Infowindow,我有一条多段线,我需要在上面显示每个点的坐标,但问题是每个信息窗口相互重叠,所以我决定只画那些不覆盖其他信息窗口的信息窗口,但不知道如何捕捉它 目前我有 window.onload = function() { var bounds = new google.maps.LatLngBounds(); var coordinates = []; map = new google.maps.Map(document.getElementByI

我有一条
多段线
,我需要在上面显示每个点的坐标,但问题是每个信息窗口相互重叠,所以我决定只画那些不覆盖其他信息窗口的信息窗口,但不知道如何捕捉它

目前我有

    window.onload = function() {
        var bounds = new google.maps.LatLngBounds();
        var coordinates = [];

        map = new google.maps.Map(document.getElementById('map_canvas'), {mapTypeId: google.maps.MapTypeId.HYBRID});

        for (i = 0, len = points.point.length; i < len; i++) {
            var tmp_coor = new google.maps.LatLng(points.point[i].lat, points.point[i].lon);

            coordinates.push(tmp_coor);
            bounds.extend(tmp_coor);

            var infowindow = new google.maps.InfoWindow({
                content: points.point[i].lat + ', ' + points.point[i].lon,
                maxWidth: 120
            });

            infowindow.setPosition(tmp_coor);

            infowindow.open(map);
        }

        var polyline = new google.maps.Polyline({
            path: coordinates,
            strokeColor: '#FF0000',
            strokeOpacity: 1.0,
            strokeWeight: 2,
            editable: false
        });

        polyline.setMap(map);

    map.fitBounds(bounds);
}
window.onload=function(){
var bounds=new google.maps.LatLngBounds();
变量坐标=[];
map=new google.maps.map(document.getElementById('map_canvas'),{mapTypeId:google.maps.mapTypeId.HYBRID});
对于(i=0,len=points.point.length;i
它创造了


也许有人对这个问题有什么建议?

Yekes,这是很多信息窗口!即使您只输出它们,这样它们就不会相互重叠。如果需要显示所有坐标,是否可以将它们作为地图下方的某种列表输出?或者,对于该坐标,将信息窗口悬停在多段线上only@duncan不,我需要在每个窗口上都使用它。一个问题是,信息窗口的大小是根据其内容动态决定的。因此,如果你的坐标是(0,0),infowindow将小于(-89.99999,-179.9999)@duncan的坐标,因此没有任何方法可以得到当前
infowindow
div的位置?你在infowindow类中有getPosition(),但这只是给出了lat/lng坐标!