Javascript 谷歌地图API,Can';我根本不想让马克出现
我已经启动并运行了地图,但我无法在“中心”和“位置”指定的横向和纵向放置标记。有人看到错误了吗?我之前做过这个,但是在添加样式数组之后,它停止了,我一定是不小心弄乱了一些东西,但是我现在没有看到它Javascript 谷歌地图API,Can';我根本不想让马克出现,javascript,html,google-maps,Javascript,Html,Google Maps,我已经启动并运行了地图,但我无法在“中心”和“位置”指定的横向和纵向放置标记。有人看到错误了吗?我之前做过这个,但是在添加样式数组之后,它停止了,我一定是不小心弄乱了一些东西,但是我现在没有看到它 <div id="map"></div> <script src="https://maps.googleapis.com/maps/api/js?sensor=false"></script> <script> var map;
<div id="map"></div>
<script src="https://maps.googleapis.com/maps/api/js?sensor=false"></script>
<script>
var map;
function initialize() {
var mapOptions = {
zoom: 17,
center: new google.maps.LatLng(36, -110),
mapTypeId: google.maps.MapTypeId.ROADMAP,
styles: styleArray,
scrollwheel: false,
};
map = new google.maps.Map(document.getElementById('map'),
mapOptions);
}
google.maps.event.addDomListener(window, 'load', initialize);
var styleArray = [
{
featureType: "all",
stylers: [ { saturation: -80 } ]
},
{
featureType: "road.arterial",
elementType: "geometry",
stylers: [ { hue: "#00ffee" }, { saturation: 50 } ]
},
{
featureType: "poi.business",
elementType: "labels",
stylers: [ { visibility: "off" } ]
}
];
var marker = new google.maps.Marker({
position: (36, -110),
title:"Hello World!",
map: (google.maps.MapTypeId.ROADMAP),
});
marker.setMap(google.maps.MapTypeId.ROADMAP);
</script>
var映射;
函数初始化(){
变量映射选项={
缩放:17,
中心:新google.maps.LatLng(36,-110),
mapTypeId:google.maps.mapTypeId.ROADMAP,
样式:样式数组,
滚轮:错误,
};
map=new google.maps.map(document.getElementById('map'),
地图选项);
}
google.maps.event.addDomListener(窗口“加载”,初始化);
var styleArray=[
{
featureType:“全部”,
样式器:[{饱和度:-80}]
},
{
功能类型:“道路.干线”,
elementType:“几何体”,
样式器:[{色调:{00ffee},{饱和度:50}]
},
{
featureType:“poi.business”,
elementType:“标签”,
样式器:[{可见性:“关闭”}]
}
];
var marker=new google.maps.marker({
位置:(36,-110),
标题:“你好,世界!”,
地图:(google.maps.MapTypeId.ROADMAP),
});
setMap(google.maps.MapTypeId.ROADMAP);
发布的代码中存在javascript错误:
InvalidValueError:setPosition:不是LatLng或LatlInTerral:不是对象
InvalidValueError:setMap:不是Map的实例;而不是街景全景的实例
initialize
函数外部实例化(因此它在定义map
变量之前实例化。将其移动到initialize
函数内部marker.setMap
函数将google.maps.Map
对象作为其参数,这是不正确的:
marker.setMap(google.maps.MapTypeId.ROADMAP);
marker.setMap(map);
var marker = new google.maps.Marker({
position: google.maps.LatLng(36, -110),
title:"Hello World!",
map: map,
});
google.maps.LatLng
对象或google.maps.LatLngLiteral
,(36,-110)
两者都不是,并且map
属性必须是google.maps.LatLng
;这是:
var marker = new google.maps.Marker({
position: (36, -110),
title:"Hello World!",
map: (google.maps.MapTypeId.ROADMAP),
});
marker.setMap(map);
var marker = new google.maps.Marker({
position: google.maps.LatLng(36, -110),
title:"Hello World!",
map: map,
});
代码片段:
var映射;
函数初始化(){
变量映射选项={
缩放:17,
中心:新google.maps.LatLng(36,-110),
mapTypeId:google.maps.mapTypeId.ROADMAP,
样式:样式数组,
滚轮:错误,
};
map=new google.maps.map(document.getElementById('map'),
地图选项);
var marker=new google.maps.marker({
位置:新google.maps.LatLng(36,-110),
标题:“你好,世界!”,
地图:地图,
});
marker.setMap(map);
}
google.maps.event.addDomListener(窗口“加载”,初始化);
var styleArray=[{
featureType:“全部”,
样式:[{
饱和度:-80
}]
}, {
功能类型:“道路.干线”,
elementType:“几何体”,
样式:[{
色调:“00ffee”
}, {
饱和度:50
}]
}, {
featureType:“poi.business”,
elementType:“标签”,
样式:[{
能见度:“关闭”
}]
}];
google.maps.event.addDomListener(窗口“加载”,初始化);
html,
身体
#地图{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}
显示标记的4个步骤
- 将密钥放入JS库。如下所示:
详情请访问https://maps.googleapis.com/maps/api/js?sensor=false&key=[你的谷歌钥匙]
- 将创建标记的代码放入initialize方法中,只需确保在创建映射后对其进行初始化即可
- 标记位置应该是一个实例
,而不是您的代码new google.maps.LatLng(36,-110)
(36,-110)
方法是不必要的,我们可以删除它marker.setMap