【发布时间】:2016-11-12 03:03:30
【问题描述】:
我正在尝试使用 TheNewBoston 的视频来编写一个具有“获取位置”按钮的网站,并会调出用户位置的 Google 地图。但是,每次我在我的网站上单击“获取位置”时,都没有任何反应。我在玩代码并且能够让地图显示一次,但我无法再次获得该结果并且不知道我是如何让它工作的。不知道我做错了什么?
这是我的代码:
<!DOCTYPE html>
<html lang="en-US">
<head>
<title>Location Retriever</title>
</head>
<body>
<a href="#" id="get_location">Get Location</a>
<div> id="map">
<iframe id="google_map" width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com">
</div>
<script>
var c = function(pos) {
var lat = pos.coords.latitude,
var long = pos.coords.longitude,
var coords = lat + ', ' + long;
document.getElementById('google_map').setAttribute('src','https://maps.google.com' + coords + '&z=60&output=embed');
}
document.getElementById('get_location').onclick = function() {
navigator.geolocation.getCurrentPosition(c);
return false;
}
</script>
【问题讨论】:
-
使用 chrome 网络浏览器?如果是这样,请确保您使用
https://而不是http://,因为谷歌现在只允许在启用 ssl 的页面上定位。最好使用 firefox -
是的,你也可以使用旧的 chrome 版本,50 之前的任何版本都可以使用
-
@Novice - 谢谢!我已经在 Firefox 和 Safari 上打开了该网站,但不幸的是,我仍然没有得到太大的不同。我点击“获取位置”,但没有任何反应。
-
控制台有错误吗?还要检查
return false我认为它不应该在那里
标签: javascript html geolocation