2012-03-20 3 views
1

geolocation에 따라 자바 스크립트 코드가 있습니다. 왜이 HTML5 위치 정보에 의존하는 자바 스크립트 코드가 잘못 되었습니까?

http://jsfiddle.net/8D6vz/

var myLat = 0.0; 
var myLng = 0.0; 

function setCurrentPosition(position) { 
myLat = position.coords.latitude; 
myLng = position.coords.longitude; 
} 

function errorOccured() { 
document.write("sorry, error occured :("); 
} 

$(function() { 
navigator.geolocation.getCurrentPosition(setCurrentPosition, errorOccured); 
document.write(myLat + " " + myLng); 
}); 

그러나이 코드는 단순히
0 0 

대신

"client's latitude here" "client's longitude here" 

을 생산?

Google은 확실히 Geolocation을 지원하는 Chrome을 사용하고 있습니다. 브라우저에서 내 위치를 추적 할 수도있었습니다.

+0

오 열망 비버 ... – dangerChihuahua007

답변

2

GetCurrentPosition 비동기 기능, 당신은

function GetGeolocation() { 

navigator.geolocation.getCurrentPosition(GetCoords, GetError); 

} 
function GetCoords(position){ 

    var lat = position.coords.latitude; 

    var long = position.coords.longitude; 

    var accuracy = position.coords.accuracy; 

    alert('Latitude: ' + lat + ', Longitude: '+ long); 

} 
0

아, 생각났습니다.

나는

navigator.geolocation.getCurrentPosition() 

비동기 기능이라고 생각합니다. 따라서 원래 값을 인쇄하는 위도 및 경도 값이 화면에 인쇄 된 후 setCurrentPosition(position)이 호출됩니다.

+0

글쎄, 그 어색처럼 사용할 수 있습니다. 나는 내 자신의 질문에 대답했다. 나는이 문제가 비슷한 문제를 겪은 다른 사람들을 도왔 으면 좋겠다. :) 더 좋은 대답이나 설명이 있다면 알려줘. – dangerChihuahua007

관련 문제