一个页面上的多个谷歌地图具有相同的风格
multiple google maps on one page with same style
我想在一个页面上显示多个谷歌地图。
我有这段代码,但我不知道该怎么做。
必须添加什么?
我想要其他具有相同样式的地图。
另一个问题是谷歌地图没有加载满
谁能帮我?
function initialize() {
var styles = [
{
featureType: 'water',
elementType: 'all',
stylers: [
{ hue: '#E6E6E6' },
{ saturation: -100 },
{ lightness: 59 },
{ visibility: 'on' }
]
},{
featureType: 'landscape.natural',
elementType: 'all',
stylers: [
{ hue: '#999999' },
{ saturation: -100 },
{ lightness: -37 },
{ visibility: 'on' }
]
},{
featureType: 'road',
elementType: 'all',
stylers: [
{ hue: '#4C4C4C' },
{ saturation: -100 },
{ lightness: -53 },
{ visibility: 'simplified' }
]
},{
featureType: 'landscape.man_made',
elementType: 'all',
stylers: [
{ hue: '#ffffff' },
{ saturation: -100 },
{ lightness: 100 },
{ visibility: 'on' }
]
},{
featureType: 'road.highway',
elementType: 'all',
stylers: [
{ hue: '#bfbfbf' },
{ saturation: -100 },
{ lightness: 30 },
{ visibility: 'on' }
]
},{
featureType: 'road.arterial',
elementType: 'labels',
stylers: [
{ hue: '#bfbfbf' },
{ saturation: -100 },
{ lightness: -3 },
{ visibility: 'simplified' }
]
},{
featureType: 'road.local',
elementType: 'geometry',
stylers: [
{ hue: '#f1f1f1' },
{ saturation: -100 },
{ lightness: -5 },
{ visibility: 'simplified' }
]
},{
featureType: 'poi',
elementType: 'all',
stylers: [
{ hue: '#e6e6e6' },
{ saturation: -100 },
{ lightness: 55 },
{ visibility: 'on' }
]
},{
featureType: 'poi.park',
elementType: 'all',
stylers: [
{ hue: '#d0d0d0' },
{ saturation: -100 },
{ lightness: 16 },
{ visibility: 'on' }
]
}
];
var mapOptions = {
mapTypeControlOptions: {
mapTypeIds: [ 'Styled']
},
center: new google.maps.LatLng(37.96112215672197, 23.72348675727846),
zoom: 16,
mapTypeId: 'Styled'
};
var map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
var styledMapType = new google.maps.StyledMapType(styles, { name: 'Styled' });
map.mapTypes.set('Styled', styledMapType);
}
function loadScript() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false&' +
'callback=initialize';
document.body.appendChild(script);
}
window.onload = loadScript;
你得到了以下内容:
var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
var styledMapType = new google.maps.StyledMapType(styles, { name: 'Styled' });
map.mapTypes.set('Styled', styledMapType);
我将一一解释:
var map = new google.maps.Map(document.getElementById('map-canvas'), mapOptions);
这会将新的google.maps.Map
类型分配给变量map
元素 ID #map-canvas
var styledMapType = new google.maps.StyledMapType(styles, { name: 'Styled' });
这会为变量 styledMapType 分配一个具有先前声明样式的新google.maps.StyledMapType
,最后
map.mapTypes.set('Styled', styledMapType);
我们再次回调 map
变量,并使用 mapTypes.set
方法将上一个赋值中声明的styledMapType
附加到它。
如果您希望在同一文档中使用多个地图,则应首先使用 var styledMapType 创建新样式,然后在不同的容器上创建不同的地图,并将每种样式附加到要设置样式的每个地图。
最后你应该有这样的东西:
var styledMapType = new google.maps.StyledMapType(styles, { name: 'Styled' });
var map1 = new google.maps.Map(document.getElementById('map1'), mapOptions);
map1.mapTypes.set('Styled', styledMapType);
var map2 = new google.maps.Map(document.getElementById('map2'), mapOptions);
map2.mapTypes.set('Styled', styledMapType);
var map3 = new google.maps.Map(document.getElementById('map3'), mapOptions);
// This map uses the standard styling
并在 HTML 标记上简单地
<div id="map1"></div>
<div id="map2"></div>
<div id="map3"></div>
Ta-da,3张地图在同一页面上运行,具有不同的样式。使用mapOptions
作为模板创建不同的设置变量,您还可以为每个地图应用不同的起始位置,因为使用不同的styledMapType
您可以设置不同的样式:
var mapLondon = new google.maps.Map(document.getElementById('mapLondon'), mapLondonOptions);
mapLondon.mapTypes.set('Styled', styledMapLondon);
var mapNewyork = new google.maps.Map(document.getElementById('mapNewyork'), mapNewyorkOptions);
mapNewyork.mapTypes.set('Styled', styledMapNewyork);
相关文章:
- 谷歌地图固定位置覆盖
- 不显示带有本地json文件数据的谷歌地图脚本
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- ACF谷歌地图-改变风格
- 谷歌地图自定义按钮与标准风格
- 谷歌地图气球失去风格
- 谷歌地图“卫星”自己的风格
- 一个页面上的多个谷歌地图具有相同的风格
- 为什么谷歌地图中没有反映出融合表的风格
- 谷歌地图自定义风格赢得'不起作用
- 谷歌地图不应用风格
- 如何在画布上进行谷歌地图风格的滚动
- 两个风格的谷歌地图在一个页面上
- yelp风格的谷歌地图,跟随用户上下页面
- 谷歌地图API v3与Wordpress?不同的地图在不同的岗位上,有共同的风格
- 2风格的地图在谷歌地图api v3
- 如何在谷歌地图的风格上加载一个巨大的图像
- 谷歌地图通过复选框改变风格
- 如何在谷歌地图中设计高尔夫球场的风格(沙丘和绿色)
- 多种风格的谷歌地图