Google Maps V3 .getBounds()。lat()返回Window

时间:2017-05-25 14:49:07

标签: javascript google-maps-api-3

我正在使用GMaps V3运行Django应用。我在地图上绘制标记,但由于数据集的大小,我不想全部渲染它们,只是在当前视口中可见的那些。

我使用var top = map.getBounds().getNorthEast().lat()在两种不同的情况下获取视口的边界,然后过滤我的所有点,只显示纬度低于top的那些。

我第一次运行此操作会返回我所期望的,像52.xxx这样的纬度,但第二次返回Window。我还为视口的左侧,右侧和底部运行相同类型的函数,并且两次都返回相同(预期)的结果。

很难给出确切的代码,因为它非常依赖应用程序的其余部分,但作为一个例子:

function getMapBounds(map){
    var r = map.getBounds().getNorthEast().lng();
    var l = map.getBounds().getSouthWest().lng();
    var t = map.getBounds().getNorthEast().lat();
    var b = map.getBounds().getSouthWest().lat();

    MB = [r, l, t, b];
}
console.log(MB)

返回:

[-6.182485199047846, -6.294923400952143, 53.32952272076843, 53.28244090019188]

,而:

function plotPoints(map){
    right = map.getBounds().getNorthEast().lng();
    left = map.getBounds().getSouthWest().lng();
    top = map.getBounds().getNorthEast().lat();
    bottom = map.getBounds().getSouthWest().lat();
    console.log(right);
    console.log(left);
    console.log(top);
    console.log(bottom);
}

返回:

-6.204080899047881
-6.316519100952178
Window {stop: function, open: function, alert: function, confirm: function, prompt: function…}
53.326276765171606

除了我的top变量之外,数字是相同的(因为它们应该是相同的视口)。我复制并粘贴了代码以确保它们在两种情况下都相同,并查找可能导致问题的重复变量名称,但没有找到。尝试更改变量名称和重新排序功能,但没有运气

任何想法,为什么他们的不同和潜在的解决方案将受到极大的欢迎!

0 个答案:

没有答案