我在用户可以创建帖子的页面上有以下代码:
<script>
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
}
function showPosition(position)
{
$('input#latitude').val(position.coords.latitude);
$('input#longitude').val(position.coords.longitude);
}
getLocation();
</script>
这将使用用户坐标填充表单上的两个隐藏字段。这些坐标保存在帖子的数据库表中,以便可以在地图上显示帖子,以便其他用户可以看到它的发布位置。
但是,如果用户决定: A) 不分享他们的位置 B) 使用不支持地理位置的浏览器
我将无法保存此信息,它会破坏应用程序的要点!
他们是更好的方法吗?当用户决定不分享他们的位置或没有地理定位时,以某种方式处理问题?
到目前为止,我有:http ://dev.driz.co.uk/location/作为测试,我还有一个字段,该字段将以城镇/城市的形式填充用户位置。这样用户就可以看到他们当前发布的位置,如果错误,则允许他们更改并更新坐标(请注意,这只会获得中心位置,而不是我们将获得的实际位置只是在寻找他们进入的城镇)。
我正在寻找使用 Google Maps API 来计算用户位置。
为了澄清我想要构建的内容:
1.) 来自用户表的用户位置将填充页面上显示的字段。然后,这将被他们使用 Geolocation 的当前位置覆盖。如果他们没有这个或阻止它,那么它将只使用预填充的文本。
2.) 使用此位置值或地理位置,我们将为用户获取坐标,然后将它们插入隐藏字段。
3.) 如果用户认为该位置错误或出于某种原因想要将其更改为其他位置,那么他们可以在框中键入它并单击更改按钮,然后该按钮将找到该位置的坐标。(如果找不到则显示错误,并使用用户位置的预填充默认值,直到找到新的)。
任何人都可以帮忙吗?谢谢