我正在使用谷歌地图api制作一张带有自定义标记和按钮的地图,这些标记和按钮可以更改地图的中心和缩放。我有一个地图和信息窗口的全局变量。我的地图在初始化时显示为灰色,没有缩放控制。
控制台中没有显示任何错误消息。我有五个按钮:亚洲、北美、中东、纽约、新英格兰。这些按钮用于更改地图的中心和缩放。但是我想让地图从地图的初始位置开始
var mapOptions= {
center: new google.maps.LatLng(38.423734,27.142826),
zoom: map.setZoom(4)
};
我通过一个位置对象使用foreach循环来定制地图上的标记和信息窗口。我还有一个功能来设置制造商的类型。这很有效。
$(document).ready(function(){
var map, infoWindow;
function initMap() {
map = new google.maps.Map(document.getElementById('map'), mapOptions)
var mapOptions = {
center: new google.maps.LatLng(38.423734,27.142826),
zoom: map.setZoom(4)
};
$("#asia").on('click', function () {
newLocation(37.566535,126.977969,5);
});
$("#northAmerica").on('click', function () {
newLocation(30.902225,-90.659180,4);
});
$("#middleEast").on('click', function () {
newLocation(38.423734,27.142826,4);
});
$("#newYork").on('click', function () {
newLocation(40.753159,-73.98936,12);
});
$("#newEngland").on('click', function () {
newLocation(42.292783,-71.304496,7);
});
google.maps.event.addDomListener(窗口,加载,initMap);是for循环添加自定义标记后initMap函数的一部分。
在我关闭initMap函数后,但仍然在$(文档)中。就绪(函数(){调用initMap,并google.maps.event.addDomListener(窗口,加载,initMap)定义函数newPlace;
对于自定义标记的每个循环
function newLocation(newLat,newLng,newZoom) {
map.setCenter({
lat : newLat,
lng : newLng,
});
map.setZoom(newZoom)
};
initMap();
});
我在您发布的initMap
function:uncaughttypeerror:map.setZoom不是这行的函数:
zoom:map.setZoom(4)
那应该是:
zoom: 4
代码片段:
function initMap() {
var mapOptions = {
center: new google.maps.LatLng(38.423734, 27.142826),
zoom: 4
};
map = new google.maps.Map(document.getElementById('map'), mapOptions)
$("#asia").on('click', function() {
newLocation(37.566535, 126.977969, 5);
});
$("#northAmerica").on('click', function() {
newLocation(30.902225, -90.659180, 4);
});
$("#middleEast").on('click', function() {
newLocation(38.423734, 27.142826, 4);
});
$("#newYork").on('click', function() {
newLocation(40.753159, -73.98936, 12);
});
$("#newEngland").on('click', function() {
newLocation(42.292783, -71.304496, 7);
});
}
google.maps.event.addDomListener(window, 'load', initMap);
function newLocation(newLat, newLng, newZoom) {
map.setCenter({
lat: newLat,
lng: newLng,
});
map.setZoom(newZoom)
};
html,
body,
#map {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input id="asia" value="asia" type="button" />
<input id="northAmerica" value="northAmerica" type="button" />
<input id="middleEast" value="middleEast" type="button" />
<input id="newYork" value="newYork" type="button" />
<input id="newEngland" value="newEngland" type="button" />
<div id="map"></div>
我已经阅读了很多关于这个问题的文章,但是没有什么能解决我的问题。我有一个标签上的谷歌地图,最初是隐藏的网页加载时,希望得到一些帮助,请。以下是完整的代码: 我就是不能让它工作。如果有人看到有帮助的东西,请回复。谢啦 编辑:将元素选择器更改为类,并将我的链接更改为类而不是ID,现在它至少会选择它。我在firebug中得到一个错误,“mymap未定义”。
我想说我有一个相当简单的问题,这让我发疯。在我的客户网页上http://alminde-akupunktur.dk/ 在登录页面的底部,我使用谷歌地图作为背景。在我更新GoogleMapsAPI之后,地图变成了灰色,我还没有解决这个问题,控件和标记仍在显示。 有人能给我指出问题所在的正确方向吗?是我的CSS干扰了谷歌地图的呈现方式? 提前谢谢
我有一个网页上的现有地图,使用以下脚本段正确缩放和居中:var mapOptions={center:{lat: 43.57023,lng:-79.48676},缩放: 12}map=newgoogle.maps.Map(document.getElementById(地图画布), mapOptions); 然后,我使用以下命令添加kml层:var myLayer=new google.maps.
我有一个KMZ,它也包含区域多边形和城市点(12个谷歌引脚),但它们不会出现在地图上,尽管如你所见已打开。如何可见它们?有人能帮我吗? 这是地图:http://goo.gl/maps/Nbrfq 安得烈
你好我现在试图在webview内使用我的网站一个应用程序,问题我有一个按钮与位置信息拉,郎在页面,当我在google chrome上使用网站时,按钮在移动中打开谷歌地图应用程序,但当我在app Inventor的webview内使用它时,它在相同的webview内打开浏览器中像新标签一样的地图,位置权限有问题试图使按钮在移动webview内打开本机地图应用程序没有运气这里是我的页面按钮代码。