我想删除用户将地图从卫星视图放入45度倾斜模式的选项。我可以通过调用Map对象上的setTilt(0)来设置默认倾斜,但是当显示地图,并且用户单击地图右上角的Satellite选项时,它仍然显示45度选项。
如何消除45度选项,并且用户仍然可以在道路和卫星视图之间切换。
答案 0 :(得分:14)
我发现解决此问题的最佳方法包括在地图选项中设置倾斜参数,以及使用css属性选择器隐藏弹出窗口。在其他解决方案中,用户仍然可以手动切换到45º视图。
地图选项
var mapOptions = {
tilt:0,
//all other map options
}
CSS隐藏弹出窗口(当鼠标悬停在'Satellite'控件上时)。
[title=Show\ 45\ degree\ view]
{
display:none;
}
答案 1 :(得分:6)
var mapOptions = {
center: mycenter,
zoom: 7,
tilt: 0,
此代码会永久禁用45度视图,但我无法将其删除。
编辑
答案 2 :(得分:2)
我通过手动重新实现“mapTypeControl”来完成此操作。然后你可以控制所包含的内容。
(我之所以这样做,是因为以前没有办法不包括Terrain选项 - 但现在已经修复了。它的基本问题相同)
可以使用此示例作为起点: http://gmaps-samples-v3.googlecode.com/svn/trunk/controls/index.html
答案 3 :(得分:1)
我看着google maps javascript documentation并发现了这一点:
rotateControl启用/禁用用于控制45°图像方向的Rotate控件的外观。
这还不是很清楚,但是使用下面的代码进行测试也可以隐藏倾斜控件。
代码:
let mapOptions = {
//other options here
tilt: 0,
rotateControl: false
}
答案 4 :(得分:0)
我发现你需要一个稍微不同的CSS来隐藏45度选择器:
[title=Show\ 45\ degree\ view], [title=Zoom\ in\ to\ show\ 45\ degree\ view], [title=Zoom\ in\ to\ show\ 45-degree\ view] {
display:none !important;
}
更新,发现在移动设备上查看地图时使用的另一个标题。
答案 5 :(得分:0)
另一种方法是添加一个事件监听器以强制倾斜为0
。此外,您还可以像其他人推荐的那样在地图选项中设置tilt: 0
。
它不会删除UI,但会阻止除开销之外的任何视图。它不依赖于语言,您不必更新CSS。
E.g:
google.maps.event.addListener(map, 'tilt_changed', function() {
if (map.getTilt() != 0) {
map.setTilt(0);
}
});