2014-10-30 66 views
1

我有以下代码获取地理位置并张贴它,然后在div中显示一个按钮。这适用于台式机,但不适用于本网站提及的常见问题。建议是在哪里把enableHighAccuracy和其他设置地理位置

{frequency:5000, maximumAge: 0, timeout: 100, enableHighAccuracy:true} 

添加到下面的某个地方的代码,我已经尝试了一些地方只是停止它的工作,我在哪里把这些值吗?

function getCoordPosition() { 

if (navigator.geolocation) { 
navigator.geolocation.getCurrentPosition(
function (position) { 
    $.ajax({ 
     type: "POST", 
     url: "{{path('login_log_location')}}", 
      data: { 
      latitude: position.coords.latitude, 
      longitude: position.coords.longitude 
     }, 
     success: function() { 
      $("#divputinarea").html("{{path('login_log_yourarea')}}"> 
      <button class="btn btn-large btn-primary"> 
      Find </button>'); 
      } 

      }); 
     }); 
    } 

} 

咨询下面我尝试以下后,作品,未经{maximumAge:0,超时:100,enableHighAccuracy:真正}如果我添加它,我得到错误“的说法2 geolocation.getCurrentPosition的不可调用的”

function getCoordPosition() { 

    if (navigator.geolocation) { 

    function getPosition(position) { 

    $.post("{{path('login_log_location')}}", { 
    latitude:position.coords.latitude, 
    longitude:position.coords.longitude }) 
    .done(function(data) { 
    $("#divputinarea").html('<form method=post action=" 
{{path('login_log_yourarea')}}"><button class="btn btn-large 
btn-primary">Find your nearest matches</button>'); 

}); 

     } 

navigator.geolocation.getCurrentPosition(getPosition, { 
maximumAge: 0,timeout: 100,enableHighAccuracy:true}); 

    } 

    } 

</script> 

回答

0

getCurrentPosition方法有三个参数:成功回调,错误回调和包含配置参数的对象。

navigator.geolocation.getCurrentPosition(
    successCallback, 
    errorCallback, 
    {frequency:5000, maximumAge: 0, timeout: 100, enableHighAccuracy:true} 
); 

这是jsfiddle

编辑:您可以修改您的代码来定义这三个参数。

function getPosition(position) { 
    $.post("{{path('login_log_location')}}", { 
    latitude:position.coords.latitude, 
    longitude:position.coords.longitude }) 
    .done(function(data) { 
     $("#divputinarea").html('<form method=post action=" 
    {{path('login_log_yourarea')}}"><button class="btn btn-large 
    btn-primary">Find your nearest matches</button>'); 
    }); 
    } 

function onError(positionError) { 
    // error handling goes here 
} 

function getCoordPosition() { 
    if (navigator.geolocation) { 
    navigator.geolocation.getCurrentPosition( 
     getPosition, // success callback 
     onError, // error callback 
     {maximumAge: 0,timeout: 100,enableHighAccuracy:true} // extra params 
    ); 
    } 
} 
+0

@Nanchi我敢肯定你的jsfiddle的作品,但我仍然无法找到我的jQuery代码做的方式见上尝试 – GAV 2014-11-03 18:21:18

+0

@GAV:见我编辑的答案。 – Nachi 2014-11-04 15:57:01

相关问题