복붙노트

[JQUERY] navigator.geolocation.getCurrentPosition 가끔 가끔 작동하지 않습니다

JQUERY

navigator.geolocation.getCurrentPosition 가끔 가끔 작동하지 않습니다

해결법


  1. 1.나는 정확히 같은 문제가, 그것에 대해 온라인으로 거의 정보를 찾는되지 않았습니다. 책에서 전혀 아무것도 없습니다. 마지막으로 나는 유래와에이 깨어 쿼리 발견 (헥타르를!) 그것이 내가 여기에 계정을 설정하는 데 필요한 최종 자극했다.

    나는 정확히 같은 문제가, 그것에 대해 온라인으로 거의 정보를 찾는되지 않았습니다. 책에서 전혀 아무것도 없습니다. 마지막으로 나는 유래와에이 깨어 쿼리 발견 (헥타르를!) 그것이 내가 여기에 계정을 설정하는 데 필요한 최종 자극했다.

    그리고 부분적인 대답을하지만, 슬프게도없는 완전한 하나.

    우선, getCurrentPosition에 대한 기본 시간 초과가 무한대 실현 (!). 백 엔드에 getCurrentPosition 중단 어딘가에 경우 오류 처리기가 호출되지 않을 것이라는 점을 의미한다.

    당신은 당신이 사용자가 그들에게 무슨 일이 일어나고 있는지 단서를주기 전에 더 이상 십초 이상 기다리고 싶지 않는 경우, 예를 들어, getCurrentPosition에 해당 통화에 세번째 매개 변수를 추가, 타임 아웃을 얻을 수 있도록하려면 다음을 사용 :

    navigator.geolocation.getCurrentPosition(successCallback,errorCallback,{timeout:10000});
    

    둘째, 나는 다른 상황에서 전혀 다른 신뢰성을 경험했다. 정확성이 좋지 않지만 여기서 집에서, 나는, 2 초 내에서 콜백을 얻는다.

    직장에서하지만, 내가 행동에 매우 기괴한 변화를 경험 : 위치 정보가 일부 컴퓨터에서 작동하는 모든 시간을 (IE는 물론 제외) 크롬 및 사파리가 아니라 파이어 폭스 (? 도마뱀 문제)에, 다른 사람은 일을, 다른 사람은 이후 다음 번 작업 실패 - 그리고 패턴은 날마다, 시간에 시간에서 변경합니다. 때때로 당신은 '운'컴퓨터가 때로는 없습니다. 아마 보름달에서 염소 도움이 될 도살?

    나는이 문제를 추측 할 수 없었다,하지만 난 백 엔드 인프라가이 기능을 밀고 다양한 궁 호 책과 웹 사이트에 광고보다 더 고르지이라고 생각한다. 난 정말 그들이 좀 더 직선이 기능이 얼마나 flakey에 대한 것이라고 할, 당신이 제대로 작동하려면 사용자의 오류 처리기를 원하는 경우 제한 시간 설정은 어떻게 중요하다.

    내가 사용 (오늘 학생들이 물건을 가르치려고 노력하고, 학생의 약 80 %가 거의 즉시 결과를 얻고 있었다 반면 (프로젝터와 여러 대형 스크린에) 내 자신의 컴퓨터가 자동으로 실패 된 당황 상황을 가지고있다 ) 같은 무선 네트워크를 정확한. 그것은 학생들도 오타 및 기타 그것을 실수을 때, 내 자신의 PC도 실패 할 때 이러한 문제를 해결하기가 매우 어렵습니다.

    어쨌든, 나는 이것이 너희들의 일부를 도움이되기를 바랍니다. 너티 체크 주셔서 감사합니다!


  2. 2.이것은 내가,이 문제를 얻고 그것을 현재의 모든 브라우저에서 작동 적어도 (Windows에서, 내가 Mac을 소유하고 있지 않은)하는 해키 방법입니다 :

    이것은 내가,이 문제를 얻고 그것을 현재의 모든 브라우저에서 작동 적어도 (Windows에서, 내가 Mac을 소유하고 있지 않은)하는 해키 방법입니다 :

    if (navigator.geolocation) {
        var location_timeout = setTimeout("geolocFail()", 10000);
    
        navigator.geolocation.getCurrentPosition(function(position) {
            clearTimeout(location_timeout);
    
            var lat = position.coords.latitude;
            var lng = position.coords.longitude;
    
            geocodeLatLng(lat, lng);
        }, function(error) {
            clearTimeout(location_timeout);
            geolocFail();
        });
    } else {
        // Fallback for no geolocation
        geolocFail();
    }
    

    이 것 또한 작품은 누군가가 더 가까운 또는 선택한다면를 클릭하거나 파이어 폭스에 절대 공유 옵션을 선택합니다.

    투박하지만 작동합니다.


  3. 3.이것은 나를 위해 모든 시간을 작동합니다 :

    이것은 나를 위해 모든 시간을 작동합니다 :

    navigator.geolocation.getCurrentPosition(getCoor, errorCoor, {maximumAge:60000, timeout:5000, enableHighAccuracy:true});
    

    아주 정확하지 않지만. 재미있는 것은 같은 장치에 내가 100 미터 (마다)에 대해 저를두고이를 실행하는 경우 것입니다,하지만 난 구글로 이동하는 경우의는 정확하게 내 위치를 발견 매핑합니다. 그래서 나는 enableHighAccuracy 생각하지만 : 사실 그것이 지속적으로 작동하는 데 도움이, 더 이상 정확하게하지 않는 것 ...


  4. 4.이것은 이미 오래된 질문이지만, 모든 대답은 그래서 내가 마지막으로 발견 된 하나를 추가 할 수 있도록, 내 문제가 해결되지 않았다. 그것은 해킹 냄새 (그리고 그것은이다)하지만 내 상황에서 항상 작동합니다. 너무 상황에 바랍니다.

    이것은 이미 오래된 질문이지만, 모든 대답은 그래서 내가 마지막으로 발견 된 하나를 추가 할 수 있도록, 내 문제가 해결되지 않았다. 그것은 해킹 냄새 (그리고 그것은이다)하지만 내 상황에서 항상 작동합니다. 너무 상황에 바랍니다.

    //Dummy one, which will result in a working next statement.
    navigator.geolocation.getCurrentPosition(function () {}, function () {}, {});
    //The working next statement.
    navigator.geolocation.getCurrentPosition(function (position) {
        //Your code here
    }, function (e) {
        //Your error handling here
    }, {
        enableHighAccuracy: true
    });
    

  5. 5.여기에 같은 사람들은,이 작품은 그냥 FF와 Safari에서 크롬 (안정, 개발자 및 카나리아)에서 BTW 완벽. 또한 내 아이폰과 아이 패드에서 완벽하게 작동 (사파리!). 이 기능이 상대적 새로움에 기인 될 수 있음 (즉, 이는 버그). 나는 지금 거의 일주일에 보내고 난 그냥 그 브라우저에서 작동하도록 얻을 수 없다

    여기에 같은 사람들은,이 작품은 그냥 FF와 Safari에서 크롬 (안정, 개발자 및 카나리아)에서 BTW 완벽. 또한 내 아이폰과 아이 패드에서 완벽하게 작동 (사파리!). 이 기능이 상대적 새로움에 기인 될 수 있음 (즉, 이는 버그). 나는 지금 거의 일주일에 보내고 난 그냥 그 브라우저에서 작동하도록 얻을 수 없다

    여기에 내가 무엇을 발견 :

    당신이 getCurrentPosition 전화 처음이 완벽하게 작동합니다. 결코이 반환 이후의 호출, 즉 그것은 successCallback 또는 errorCallback 함수를 발생하지 않습니다. 나는 나의 점을 증명하기 위해 나의 부름에 몇 위치 옵션을 추가 :

     navigator.geolocation.getCurrentPosition(successCallback, errorCallback,  {timeout: 10000});
    

    그리고 시간마다 출력 (최초의 성공적인 호출 후). 내가 maximumAge를 함께 해결할 수 있다고 생각하지만이 일에 생각대로 작동하지 않는 것 중 하나

    navigator.geolocation.getCurrentPosition(successCallback, errorCallback,  {maximumAge:60000, timeout: 2000});
    

    이것은 당신을 60 초 이내에 호출하면 getCurrentPosition 함수를 호출 실제로 방지해야하지만이 무시 (I 실제로 두 번째 호출을 트리거 내 페이지를 새로 고침 때문에,이 때문에이 될 수 없습니다 확인이 영구 전체의 통화 인 경우)

    BTW, 심지어 구글의 예는 나에게, 그것을 시도,이 참 브라우저 버그가 있다고 생각 Safari에서 두 번로드 리드 이러한 브라우저에 실패하고 다시 실행하면 작동하지 않습니다.

    아무도 이것에 대한 해결책을 발견하면 알려 주시기 바랍니다 :-)

    건배.


  6. 6.그것은 기본적으로 타임 아웃 (적어도 내가 생각을)이 없기 때문에 오류 메시지가 표시되지 않습니다. 나는 파이어 폭스는 항상 시간 제한을주는 유일한 나를 위해 파이어 폭스와 같은 문제가 있었다. 당신은 자신이 좋아하는 시간 제한을 설정할 수 있습니다.

    그것은 기본적으로 타임 아웃 (적어도 내가 생각을)이 없기 때문에 오류 메시지가 표시되지 않습니다. 나는 파이어 폭스는 항상 시간 제한을주는 유일한 나를 위해 파이어 폭스와 같은 문제가 있었다. 당신은 자신이 좋아하는 시간 제한을 설정할 수 있습니다.

    내 기능은 크롬에서 잘 작동하지만 난 파이어 폭스에서 타임 아웃마다 얻을.

        navigator.geolocation.getCurrentPosition(
            function(position) {
                //do succes handling
            },
            function errorCallback(error) {
                //do error handling
            },
            {
                timeout:5000
            }
        );
    

    나는 신중하게 오류를보고하는 것이 좋습니다. 모든 것을 예상해야합니다. 모두를위한 백업 계획을 가지고있다. 나는 geolocations 및 네비게이터 geolocations 실패 구글 두 경우 내 데이터베이스 나 자신에서 약간의 기본값 또는 값을 사용합니다.


  7. 7.나는 그것이 사람에게 유용 경우 여기를 게시합니다 ...

    나는 그것이 사람에게 유용 경우 여기를 게시합니다 ...

    내가 활성 navigator.geolocation.watchPosition 기능 실행이 있다면 iOS의 사파리에서 navigator.geolocation.getCurrentPosition 호출 시간이 초과 것이다.

    시작과 여기에 설명 된대로 제대로 clearWatch을 (사용 watchPosition)를 중지, 일 : https://developer.mozilla.org/en-US/docs/Web/API/Geolocation/watchPosition


  8. 8.나는 아직도 2017 년 여드름이 결과를 받고 있어요, 나는 이론이있다 : API 문서는 호출이 HTTPS를 통해, 지금, 즉 "보안 컨텍스트에서"에서만 사용할 수 있다고 말한다. 나는 문제 (로컬 호스트에서 HTTP) 내 개발 환경에서 결과를 얻는 데 나는이 왜 믿습니다.

    나는 아직도 2017 년 여드름이 결과를 받고 있어요, 나는 이론이있다 : API 문서는 호출이 HTTPS를 통해, 지금, 즉 "보안 컨텍스트에서"에서만 사용할 수 있다고 말한다. 나는 문제 (로컬 호스트에서 HTTP) 내 개발 환경에서 결과를 얻는 데 나는이 왜 믿습니다.


  9. 9.여기 폐쇄에 내 솔루션 덕분이다 :

    여기 폐쇄에 내 솔루션 덕분이다 :

      function geoloc(success, fail){
        var is_echo = false;
        if(navigator && navigator.geolocation) {
          navigator.geolocation.getCurrentPosition(
            function(pos) {
              if (is_echo){ return; }
              is_echo = true;
              success(pos.coords.latitude,pos.coords.longitude);
            }, 
            function() {
              if (is_echo){ return; }
              is_echo = true;
              fail();
            }
          );
        } else {
          fail();
        }
      }
    
      function success(lat, lng){
        alert(lat + " , " + lng);
      }
      function fail(){
        alert("failed");
      }
    
      geoloc(success, fail);
    

  10. 10.그래서 같은 일에 실행되었다. 나는 안정적으로 작동하지만 타임 아웃 솔루션을 시도했다. 난 당신이 그냥 호출하면 두 배의 위치가 제대로 새로 고쳐집니다 발견

    그래서 같은 일에 실행되었다. 나는 안정적으로 작동하지만 타임 아웃 솔루션을 시도했다. 난 당신이 그냥 호출하면 두 배의 위치가 제대로 새로 고쳐집니다 발견

    function getLocation(callback)
    {   
        if(navigator.geolocation)
        {
            navigator.geolocation.getCurrentPosition(function(position)
            {
                navigator.geolocation.getCurrentPosition(callback, function(){},{maximumAge:0, timeout:10000});
            },function(){}, {maximumAge:0, timeout:10000});
        }
        return true;
    }
    

    물론이 조금 느리지 만 나는 그것이 나에게 한 번 잘못된 위치를 제공 없었어요. 나는 몇 번이 아니라 그것이 위대한 작품을 다음 아무것도하지만, 다른를 돌려 시간 제한에 충돌이 있었다. 나는이 아직도 조금 해키 알고 내가 진짜 해결책을 찾는 사람에게 기대하고있다.

    또는 당신은 당신이 이런 식으로 뭔가를 시도 할 수 포기 할 때까지 계속 시도 할 것입니다 있는지 확인합니다.

    //example
    $(document).ready(function(){
        getLocation(function(position){
            //do something cool with position
            console.log(position);
        });
    });
    
    
    var GPSTimeout = 10; //init global var NOTE: I noticed that 10 gives me the quickest result but play around with this number to your own liking
    
    
    //function to be called where you want the location with the callback(position)
    function getLocation(callback)
    {   
        if(navigator.geolocation)
        {
            var clickedTime = (new Date()).getTime(); //get the current time
            GPSTimeout = 10; //reset the timeout just in case you call it more then once
            ensurePosition(callback, clickedTime); //call recursive function to get position
        }
        return true;
    }
    
    //recursive position function
    function ensurePosition(callback, timestamp)
    {
        if(GPSTimeout < 6000)//set at what point you want to just give up
        {
            //call the geolocation function
            navigator.geolocation.getCurrentPosition(
                function(position) //on success
            {
                    //if the timestamp that is returned minus the time that was set when called is greater then 0 the position is up to date
                if(position.timestamp - timestamp >= 0)
                    {
                        GPSTimeout = 10; //reset timeout just in case
                        callback(position); //call the callback function you created
                    }
                    else //the gps that was returned is not current and needs to be refreshed
                    {
                        GPSTimeout += GPSTimeout; //increase the timeout by itself n*2
                        ensurePosition(callback, timestamp); //call itself to refresh
                    }
                },
                function() //error: gps failed so we will try again
                {
                    GPSTimeout += GPSTimeout; //increase the timeout by itself n*2
                    ensurePosition(callback, timestamp);//call itself to try again
                },
                {maximumAge:0, timeout:GPSTimeout}
            )
        }       
    }
    

    나는 아마 typeos 여기에 일부 맞춤법 오류를 가지고 있지만 난 당신이 생각을 바랍니다. 누군가가 질문이 있으면 알려이나 사람이 더 나은 뭔가를 발견하면 보자.


  11. 11.아이폰 앱에서 사람의 작업을 위해 ...

    아이폰 앱에서 사람의 작업을 위해 ...

    코드가 아이폰 OS 9+에있는 UIWebView에서 실행되는 경우에, 당신은 앱의 PLIST 내 NSLocationWhenInUseUsageDescription를 설정해야합니다.

    당신이 다음을 설정하지 않으면 getCurrentPosition은 다시 전화하지 않습니다 및 사용자에게 메시지가 표시되지 않습니다.


  12. 12.@ brennanyoung의 대답은 매우 중요하지만, 실패의 경우에 무엇을 궁금해하는 경우 당신은 (내 서비스 인) 등 https://ipinfo.io 같은 IP의 위치 정보 API를 사용할 수 있습니다. 다음은 그 예이다 :

    @ brennanyoung의 대답은 매우 중요하지만, 실패의 경우에 무엇을 궁금해하는 경우 당신은 (내 서비스 인) 등 https://ipinfo.io 같은 IP의 위치 정보 API를 사용할 수 있습니다. 다음은 그 예이다 :

    function do_something(coords) {
        // Do something with the coords here
        // eg. show the user on a map, or customize
        // the site contents somehow
    }
    
    navigator.geolocation.getCurrentPosition(function(position) { 
        do_something(position.coords);
        },
        function(failure) {
            $.getJSON('https://ipinfo.io/geo', function(response) { 
            var loc = response.loc.split(',');
            var coords = {
                latitude: loc[0],
                longitude: loc[1]
            };
            do_something(coords);
            });  
        };
    });
    

    자세한 내용은 https://ipinfo.io/developers/replacing-getcurrentposition를 참조하십시오.


  13. 13.나는 비슷한 문제가되었고, 브라우저는 getCurrentPosition 호출 할 수있는 방법을 자주에 대한 제한을 가지고 있다는 가능성을 찾고있다. 내가 자주 위치를 얻을 수있는 것 같다,하지만 난 바로 페이지를 새로 고침 경우 시간이 초과됩니다. 내가 조금 기다리면, 나는 보통 다시 위치를 얻을 수 있습니다. 이것은 일반적으로 FF로 발생합니다. 크롬과 사파리, 나는 아직 주목 getCurrentPosition 타이밍 밖으로있다. 그냥 생각 ...

    나는 비슷한 문제가되었고, 브라우저는 getCurrentPosition 호출 할 수있는 방법을 자주에 대한 제한을 가지고 있다는 가능성을 찾고있다. 내가 자주 위치를 얻을 수있는 것 같다,하지만 난 바로 페이지를 새로 고침 경우 시간이 초과됩니다. 내가 조금 기다리면, 나는 보통 다시 위치를 얻을 수 있습니다. 이것은 일반적으로 FF로 발생합니다. 크롬과 사파리, 나는 아직 주목 getCurrentPosition 타이밍 밖으로있다. 그냥 생각 ...

    나는이 기능을 지원하는 모든 문서를 찾을 수 있지만, 내가 많은 테스트 후에 온 결론이었다. 아마 다른 사람이 그것에 대해 약간의 정보를 가지고있다?


  14. 14.드디어 파이어 폭스, 안드로이드에 크롬 및 기본 네비게이터 (4.2 만 테스트)에 대한 작업 버전을 발견 :

    드디어 파이어 폭스, 안드로이드에 크롬 및 기본 네비게이터 (4.2 만 테스트)에 대한 작업 버전을 발견 :

    function getGeoLocation() {
            var options = null;
            if (navigator.geolocation) {
                if (browserChrome) //set this var looking for Chrome un user-agent header
                    options={enableHighAccuracy: false, maximumAge: 15000, timeout: 30000};
                else
                    options={maximumAge:Infinity, timeout:0};
                navigator.geolocation.getCurrentPosition(getGeoLocationCallback,
                        getGeoLocationErrorCallback,
                       options);
            }
        }
    

  15. 15.Geolocation.getCurrentPosition ()에 전달 된 두 번째 매개 변수는 당신이 어떤 위치 정보의 오류를 처리 할 수있는 기능입니다. 오류 핸들러 함수 자체는 위치 정보의 시도가 실패한 이유에 대한 자세한 내용과 PositionError 객체를받습니다. 당신이 어떤 문제가 있다면 콘솔에 오류를 출력하는 것이 좋습니다 :

    Geolocation.getCurrentPosition ()에 전달 된 두 번째 매개 변수는 당신이 어떤 위치 정보의 오류를 처리 할 수있는 기능입니다. 오류 핸들러 함수 자체는 위치 정보의 시도가 실패한 이유에 대한 자세한 내용과 PositionError 객체를받습니다. 당신이 어떤 문제가 있다면 콘솔에 오류를 출력하는 것이 좋습니다 :

    var positionOptions = { timeout: 10000 };
    navigator.geolocation.getCurrentPosition(updateLocation, errorHandler, positionOptions);
    function updateLocation(position) {
      // The geolocation succeeded, and the position is available
    }
    function errorHandler(positionError) {
      if (window.console) {
        console.log(positionError);
      }
    }
    

    "반환 된 오류 코드 400 'https://www.googleapis.com/'에서 네트워크 위치 제공자"내 코드에서 메시지를이 밝혀 지내요. 구글 크롬 아웃 턴은 (예를 들어, 대부분의 데스크탑 컴퓨터)에 내장 된 GPS가없는 기기의 위치를 ​​얻기 위해 구글 API를 사용합니다. 구글은 사용자의 IP 주소를 기반으로 대략적인 위도 / 경도를 반환합니다. 개발자 (예 : 우분투에 크롬) 크롬 빌드에 그러나, 브라우저 빌드에 포함 된 어떤 API 접근 키가 없습니다. 이것은 자동으로 실패 할 수있는 API 요청을 발생합니다. 크롬 문제 179686를 참조하십시오 : 위치 정보가 자세한 내용은 403 오류를 제공합니다.


  16. 16.나는 이런 식으로 일을하지 않는 것을 발견

    나는 이런 식으로 일을하지 않는 것을 발견

    navigator.geolocation.getCurrentPosition(function() {...}, function(err) {...}, {});
    

    그러나

    이 방법은 완벽하게 작동

    function storeCoordinates(position) {
        console.log(position.coords.latitude, position.coords.longitude);
    }    
    
    function errorHandler() {...}
    
    navigator.geolocation.getCurrentPosition(storeCoordinates, errorHandler, { enableHighAccuracy: true, timeout: 20000, maximumAge: 0 });
    

  17. 17.모질라에서이 문제가 있습니다. 모든 시간 : 오류 : 알 수없는 오류 획득 위치.

    모질라에서이 문제가 있습니다. 모든 시간 : 오류 : 알 수없는 오류 획득 위치.

    지금은 47 Mozilla를 사용하고 있습니다. 나는 모든 노력을하지만, 모든 시간이 문제가있다. 내 addsress 줄에 설정 geo.wifi.ui을 가서는 "https://location.services.mozilla.com/v1/geolocate?key=test"에 가치를 변경 :하지만 난에 대해 엽니 다. 공장!

    유 위치 인수가 오류를 제한 시간을 초과하는 경우, 제한 시간 값을 증가하려고 :

    var options = {
      enableHighAccuracy: true,
      timeout: 5000,
      maximumAge: 0       
    };
    navigator.geolocation.getCurrentPosition(success, error, options);
    

  18. 18.getCurrentPosition이 실패 할 경우 대체 방법으로 IP 주소 지리적 위치 서비스를 사용하는 것이 좋습니다 수 있습니다. 우리의 API를 예를 들어 https://ip-api.io

    getCurrentPosition이 실패 할 경우 대체 방법으로 IP 주소 지리적 위치 서비스를 사용하는 것이 좋습니다 수 있습니다. 우리의 API를 예를 들어 https://ip-api.io

    $.getJSON("http://ip-api.io/json/",
        function(result) {
            console.log(result);
        });
    

  19. 19.우리의 경우 항상 처음하지만 기능을보다 3 ~ 4 배를 다시 실행을 작동 실패합니다.

    우리의 경우 항상 처음하지만 기능을보다 3 ~ 4 배를 다시 실행을 작동 실패합니다.

    간단한 해결 방법 : 로컬 저장에 보관 그것의 가치.

    전에:

    navigator.geolocation.getCurrentPosition((position) => {
      let val = results[0].address_components[2].long_name;
      doSthWithVal(val);      
    }, (error) => { });
    

    후:

    if(localStorage.getItem('getCurrentPosition') !== null) {
      doSthWithVal(localStorage.getItem('getCurrentPosition'));
    }
    else {
      navigator.geolocation.getCurrentPosition((position) => {
          let val = results[0].address_components[2].long_name;
          localStorage.setItem('getCurrentPosition',val);
          doSthWithVal(val);      
      }, (error) => { });
    }
    

  20. 20.중반 2020으로 답변 아무도 여기에 단지 해킹이나 추측, 어떤 설명을 제공하지 않습니다.

    중반 2020으로 답변 아무도 여기에 단지 해킹이나 추측, 어떤 설명을 제공하지 않습니다.

    @Coderer 점점 더 많은 장치 위치 정보에 그래서, 오늘 필요하며, 보안 컨텍스트 (https)을 내 앞에 지적한 것처럼 일반 HTTP와 전혀하지 작업을 수행합니다

    (여기에 더 적합하며 watchPosition ()) getCurrentPosition ()의 세번째 파라미터 PositionOptions 이러한 속성으로 이루어지는 것을 목적으로한다 :

    @YoLoCo 나, getCurrentPosition () 및 watchPosition ()를 방해하기 전에 지적 내가 일반적으로 2020 년에 자신의 결과를 확인으로 대신 getCurrentPosition 정기 통화의 watchPosition을 사용합니다.


  21. 21.나는 최근 자신이 문제를 발견하고,이에 대해 오는 있는지 어떻게 아냐하지만 때때로 파이어 폭스가 캐시에로드 뭔가에 걸리면 나타납니다. 캐시를 삭제하고 파이어 폭스를 다시 시작한 후에 다시 작동하려면 나타납니다.

    나는 최근 자신이 문제를 발견하고,이에 대해 오는 있는지 어떻게 아냐하지만 때때로 파이어 폭스가 캐시에로드 뭔가에 걸리면 나타납니다. 캐시를 삭제하고 파이어 폭스를 다시 시작한 후에 다시 작동하려면 나타납니다.


  22. 22.이 라이브러리는 정확도가 지정된 범위 내에있을 때까지 위치를 얻기 위해 계속 시도 할 수단 위치 정보 호출에 desiredAccuracy 및 maxWait 옵션을 추가합니다.

    이 라이브러리는 정확도가 지정된 범위 내에있을 때까지 위치를 얻기 위해 계속 시도 할 수단 위치 정보 호출에 desiredAccuracy 및 maxWait 옵션을 추가합니다.


  23. 23.자신의 입력을위한 모두에게 감사합니다,이 날 도왔습니다.

    자신의 입력을위한 모두에게 감사합니다,이 날 도왔습니다.

    대신 getCurrentPosition ()의) watchPosition를 (사용하지뿐만 아니라, 나는 또한 머리에 document.ready () 내에서 전화를 이동하는 데 필요한 것을 발견했다.


  24. 24.파이어 폭스의 반응 디자인 모드를 사용할 때 나에게 일어났다. 신청 버그보고가 있었다. 위치 측정의 API를 사용하는 동안 지금 바로 반응 디자인 모드를 사용하지 마십시오.

    파이어 폭스의 반응 디자인 모드를 사용할 때 나에게 일어났다. 신청 버그보고가 있었다. 위치 측정의 API를 사용하는 동안 지금 바로 반응 디자인 모드를 사용하지 마십시오.


  25. 25.그것은 내가 같은 문제가 있었다하지만 난 사용하여 알아 냈 안드로이드에서 어떤 일을하는 데 도움이 될 수 있습니다 에서는 setTimeout 내부 document.ready 그래서 두 번째는 사용자가 몇 초 후에 자신의 위치를 ​​허용하는 경우 내가 60000 밀리 초 (1 분)로 유지되도록 1 분 이내에 허용 버튼을 사용자가 클릭의 경우 전화로 나의 성공 기능을 허용, 그냥 넣다 제한 시간을 증가시켜야 나를 위해 일한 .

    그것은 내가 같은 문제가 있었다하지만 난 사용하여 알아 냈 안드로이드에서 어떤 일을하는 데 도움이 될 수 있습니다 에서는 setTimeout 내부 document.ready 그래서 두 번째는 사용자가 몇 초 후에 자신의 위치를 ​​허용하는 경우 내가 60000 밀리 초 (1 분)로 유지되도록 1 분 이내에 허용 버튼을 사용자가 클릭의 경우 전화로 나의 성공 기능을 허용, 그냥 넣다 제한 시간을 증가시켜야 나를 위해 일한 .

  26. from https://stackoverflow.com/questions/3397585/navigator-geolocation-getcurrentposition-sometimes-works-sometimes-doesnt by cc-by-sa and MIT license