html5 – HTML 5 Chrome中的地理位置提示

前端之家收集整理的这篇文章主要介绍了html5 – HTML 5 Chrome中的地理位置提示前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
只是开始进入HTML 5和测试出地理位置…喜欢它到目前为止。我打了一点减速,虽然…当我尝试获取我的地理位置,Chrome自动阻止该页面获得我的位置。这不会发生在其他网站,如下面的网站:

http://html5demos.com/geo

我使用的脚本:

  1. <script type="text/javascript" JavaScript" SRC="geo.js"></script>
  2. <script type="text/javascript" JavaScript" SRC="Utility.js"></script>
  3. <script type="text/javascript" JavaScript" SRC="jquery.js"></script>
  4. <script type="text/javascript" JavaScript" SRC="modernizr.js"></script>
  5.  
  6. function get_location() {
  7.  
  8. if (geo_position_js.init()) {
  9. geo_position_js.getCurrentPosition(show_map,handle_error);
  10. }
  11.  
  12. }
  13. function show_map(position) {
  14. var latitude = position.coords.latitude;
  15. var longitude = position.coords.longitude;
  16.  
  17. alert("lat:" + latitude + " long:" + longitude);
  18.  
  19.  
  20. }
  21. function handle_error(err) {
  22. alert(err.code);
  23. if (err.code == 1) {
  24. // user said no!
  25. }
  26. }
  27.  
  28. if (navigator.geolocation) {
  29. navigator.geolocation.getCurrentPosition(show_map,handle_error);
  30. } else {
  31. error('not supported');
  32. }

我从我的机器上的本地目录测试这个,所以没有真正的“域”像“http://whatever.com/mytestpage.html”。这是为什么我没有得到提示?如果是这样,是否有可能强制浏览器请求获取用户的地理位置的权限,是否可能在我的方案?

解决方法

Chrome中有一些安全限制,用于从文件:/// URI中使用地理位置,但不幸的是,它似乎没有记录任何错误来指示。它将从本地Web服务器工作。如果您已经安装了python,请尝试在测试文件所在的目录中打开命令提示符,然后发出命令:
  1. python -m SimpleHTTPServer

它应该启动一个web服务器在端口8000(可能是别的,但它会告诉你在控制台什么端口,它正在侦听),然后浏览到http://localhost:8000/mytestpage.html

如果你没有python,在Ruby中有等效的模块,或者Visual Web Developer Express带有一个内置的本地Web服务器。

猜你在找的HTML5相关文章