作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Google map 未显示。我认为问题在于纬度和经度的数据类型。这是代码:当提供经纬度的硬编码值时,所有函数都可以正常工作。
function initialize(a, b, zoom) {
alert('init called ' + "lat: " + typeof a + "long: " + typeof b + "zoom: " + typeof zoom);
//here lat long are string and zoom is number
//var zoom =parseInt(zoom);
var a = parseFloat(a);
var b = parseFloat(b);
alert('init called ' + "lat: " + typeof a + "long: " + typeof b + "zoom: " + typeof zoom);
//here lat oang and zoom all are number
var centerLoc = new google.maps.LatLng(a, b);
var mapProp = {
center: centerLoc,
zoom: zoom,
// mapTypeId:google.maps.MapTypeId.ROADMAP,
mapTypeId: google.maps.MapTypeId.SATELLITE
};
var map = new google.maps.Map(document.getElementById("googleMap"), mapProp);
marker = new google.maps.Marker({
position: centerLoc,
title: 'Click to zoom'
});
google.maps.event.addListener(marker, 'click', function () {
map.setZoom(map.getZoom() + 1);
map.setCenter(marker.getPosition());
});
marker.setMap(map);
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
这是 html:
<html>
<body>
<div id="googleMap" style="width:1000px;height:500px;"></div>
</body>
</html>
最佳答案
你的代码对我来说工作得很好。唯一的问题是你不能这样做:
google.maps.event.addDomListener(window, 'load', initialize);
因为您无法将参数传递给以这种方式调用的函数。如果您在 body 标记中将其用作 onload 函数,则它可以工作:
<body onload="initialize(-33.8665433, 151.1956316,5)">
关于javascript - 谷歌地图没有出现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15718556/
leaflet:一个开源并且对移动端友好的交互式地图 JavaScript 库 中文文档: https://leafletjs.cn/reference.html 官网(英文): ht
我是一名优秀的程序员,十分优秀!