存储定位器API +地理位置

时间:2013-06-20 07:01:58

标签: google-maps-api-3 geolocation

我正在尝试使用Google API创建商店定位器,与此处的Google示例非常类似: http://storelocator.googlecode.com/git/examples/panel.html

然而,我试图让Store Locator API通过Geolocation获取用户的位置,所以当我点击infowindow中的Get Direction时,我会获得用户位置的指示;而不是在以下地址输入我的地址:你在哪里?面板框。

在文档中我所看到的是,geolocation是View Option中的一个布尔值,默认情况下设置为True。但这并不能解决我的问题。 有没有人知道如何做到这一点?

1 个答案:

答案 0 :(得分:1)

似乎您说的googlecode页面已不存在。因此,我无法进一步了解您想要制作的内容。

然而,根据你的描述,幸运的是我几个月前制作了类似的网站。它在Grocery Store Near Me上。

Geolocation的概念是一个HTML5(实际上是W3C)Geolocation API,现在已经嵌入到大多数现代浏览器中。它是一个API,您可以获取用户的位置(纬度,经度,海拔高度和准确度)。

你可以简单地用

来调用它
navigator.geolocation.getCurrentPosition(success, error, geo_options);

成功与错误是一个可以定义的回调函数。 在我的例子中,函数看起来像这些

function success(position) {

  var latitude  = position.coords.latitude;
  var longitude = position.coords.longitude;

  // use the lat and long to call function to fetch an API through AJAX
  fetchStoreData(latitude, longitude);
}

在商店定位器架构中(如我Grocery Store Near Me中所示),Geolocation用于获取用户lat和long。 lat和long,然后通过AJAX发送到服务器以获取有关附近商店位置的数据。

服务器提供一个API,其中接受lat和long作为参数,然后获取存储数据(使用数据库或其他外部API,如foursquare),然后您可以在列表或地图上显示它。 / p>