Fra*_*gle 7 google-maps google-maps-api-3 google-maps-markers
Google Javascript Maps API 3.5
基本问题是,如果您在顶视图中有一个标记位于固定地标上,如消防栓,那么您切换到45度视图,标记不再显示在消防栓顶部.反之亦然(将标记置于45度视图中,然后切换到头顶).
重现:
请参见此处的示例:www.zingjet.com/maptest.html
- 使用可拖动标记创建基本Google地图网页.超过可用45度图像的区域初始标记/图谱位置:(尝试:33.501472920248354,-82.01948559679795).我不确定它是否会针对所有区域显示此问题,因此请尝试开始.
- 确保在最大和卫星视图附近放大
- 关闭45度图像
- 固定点上的位置标记(人行道,房屋烟囱等的角落)
- 改为45度视角.
- 标记位置移位
- 尝试旋转45度并查看标记相对于图像上原始点的移动方式.
- 切换回头顶,标记位于原始位置.
为什么会出现问题:不知道该相信什么.什么视图显示该标记的准确位置?无法创建允许人们在一个视图中定位标记并在另一个视图中查看标记的网页.主要不一致.
你要做的可能就是破解它。就谷歌而言,可能没有错误,地图上的点“出现”在不同的地方,因为 45 度视图改变了地图上的视角,从而改变了离散的经度在物理上如何出现在地图上(当缩放发生变化时,可能会发生类似的情况)。您需要做的是找出视图之间的增量,然后挂钩“tilt_changed”事件并适当调整标记。学习增量的一种简单方法是挂钩“dblclick”事件来提醒您鼠标所在的纬度:
google.maps.event.addDomListener(map, 'dblclick', function(MouseEvent){
        alert(MouseEvent.latLng.lat()+" "+MouseEvent.latLng.lng());
    }); 
// make sure you disable the maps default zoom on double click 
//or choose a different event or it will get annoying :)
然后双击屏幕上标记“应该”的位置,并创建一个相应调整标记的函数。理论上,您可以定义一个适用于任何角度的函数,这样您所要做的就是将每个标记的位置传递给tilt_changed 上的函数。让我知道这对您来说是否是一个好的开始:)
| 归档时间: | 
 | 
| 查看次数: | 1467 次 | 
| 最近记录: |