2009-06-29 144 views
17

有没有简单的方法来设计一个网站,以方便iphone用户提供gps坐标到网站?iPhone的网络应用程序可以获得GPS位置?

我想知道是否可能有一个命名约定的表单字段,例如,让用户以自动方式输入。

我正在考虑建立一个基于位置的网站,并且想为它量身定做iPhone(和其他移动用户)。我意识到iPhone应用程序可以做到这一点,但我没有装备创建一个。

+0

您应该添加移动Safari浏览器作为标签 – Maciek 2009-06-29 15:39:04

+0

我添加了此标签。 – 2009-06-29 18:37:57

+0

是否添加了标签mobile-safari的工作?以及标签的确切语法是什么? – Zubair 2011-12-08 09:32:02

回答

16

这是关于如何从iPhone读取位置的片段。看起来它需要3.0:

navigator.geolocation.getCurrentPosition(foundLocation, noLocation); 

function foundLocation(position) 
{ 
    var lat = position.coords.latitude; 
    var long = position.coords.longitude; 
    alert('Found location: ' + lat + ', ' + long); 
} 
function noLocation() 
{ 
    alert('Could not find location'); 
} 

参见:http://mapscripting.com/how-to-use-geolocation-in-mobile-safari

顺便说一句,如果你想在iPhone上使用网页代码中,有一对夫妇中间路线解决方案,您可以尝试不迫使您创建本机应用程序,但允许您将自己的网站封装在应用程序中,并访问GPS和其他本地功能。

+1

正如提示:flickr.com已经在使用其移动版本。您可以查看您当前位置附近拍摄的照片。 – housemaister 2009-06-29 16:24:12

1

我已经不要这个无需任何编程。您可以:

  1. 从iPhone Store下载iPhone应用程序“Basic GPS”。
  2. 在Twitter.com上创建一个帐户(如果您还没有帐户)。
  3. 在Twittermail.com上启动电子邮件Twitter帐户。
  4. 在基本的GPS设置中,使用来自Twittermail的秘密电子邮件地址。
  5. 在Twitter.com/widgets点击“其他”以获取用于在其他地方发布您的推文的HTML代码。
  6. 把这个HTML代码放到您的首页。
  7. 在基本的GPS中,您只需点击蓝色的“我”(上)按钮,“电子邮件”和“发送”将您的位置发送到Twitter邮箱,并在Twitter上发布。 Twitter会自动将其发布到您的主页上。

http://CharlieBloom.com处查看正在使用的样品。只有3个最新的(可定制的)Tweets可见,点击“在Twitter上关注我”选择“我的位置.....”和Google地图链接。我发送邮件后2-3分钟在我的网站上更新职位。

最好的问候, 查理·布鲁姆

4

退房下导航应用SendLocation由Jouni Erola。

它的一个简单的应用程序,将发送iPhone到您的服务器的经纬度&。 只需输入您的服务器URL以接收HTTP-GET方法的位置

1

是的,但准确性相当差。我刚刚构建了一个Web表单,将watchPosition()函数的GPS设置发布到我的数据库,然后调整结果。在划一条当地河流时,只有七个帖子中有两个是正确的。其余的都在河外,其中两个距离大约一英里!我现在正在寻找更好的解决方案。

这是我用来更新表单字段代码:

<script type="text/javascript"> 
function getGPSLocation() 
{ 
    if(navigator.geolocation) 
    { 
    navigator.geolocation.watchPosition(onGeoSuccess); 
    } else { 
    alert("Your browser or device doesn't support Geolocation"); 
    } 
} 

function onGeoSuccess(position) { 
    document.getElementById("Latitude").value = position.coords.latitude; 
    document.getElementById("Longitude").value = position.coords.longitude; 
} 
</script> 

这是形式。更新以满足您的需求。

<form> 
<img src="spacer.gif" OnLoad="getGPSLocation();"> 
<input type="Text" name="Latitude" id="Latitude" value=""> 
<input type="Text" name="Longitude" id="Longitude" value=""> 
</form> 
相关问题