HTML5 geopositioning
HTML5 Geolocation (geopositioning) usado para localizar a localização do usuário.
Localize a posição do usuário
HTML5 Geolocation API para obter a localização do usuário.
Tendo em vista esse recurso pode violar a privacidade dos usuários, a menos que o usuário concorda em contrário, as informações de localização do usuário não está disponível.
Suporte a navegadores
Internet Explorer 9 +, Firefox, Chrome, Safari e Opera apoio Geolocation (localização geográfica).
Nota: Geolocation (geopositioning) Para dispositivos com GPS, como o iPhone, geopositioning mais precisa.
HTML5 - Use a segmentação geo-
Use o método getCurrentPosition () para obter a localização do usuário.
O exemplo a seguir é um exemplo de geolocalização simples, o usuário pode retornar à latitude localização e longitude:
Exemplos
getLocation function ()
{
Se (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition (showPosition);
}
mais
{
x.innerHTML = "Este navegador não suporta ficar localização.";
}
}
showPosition função (posição)
{
x.innerHTML = "Lat:" + + position.coords.latitude
"<br> Longitude:" + position.coords.longitude;
}
tente »
exemplos de análise:
- É testado para geopositioning
- Se for suportado, execute o método getCurrentPosition (). Se não, ele exibe uma mensagem para o usuário.
- Se getCurrentPosition () for bem sucedida, a função para retornar os parâmetros especificados em um coordenadas alvo showPosition
- showPosition () função recupera e exibe a latitude e longitude
O exemplo acima é um script muito básico geopositioning manuseio, livre de erros.
Tratamento de erros e rejeitado
O método segundo parâmetro getCurrentPosition () para o tratamento de erros. Ele especifica quando a função get a ser executado quando a localização do usuário falhou:
Exemplos
{
switch (error.code)
{
caso error.PERMISSION_DENIED:
x.innerHTML = "usuário se recusou a entrar pedido de localização."
break;
caso error.POSITION_UNAVAILABLE:
x.innerHTML = "informações de localização não está disponível."
break;
caso error.TIMEOUT:
x.innerHTML = "local de solicitação do usuário expirou."
break;
caso error.UNKNOWN_ERROR:
x.innerHTML = "Erro desconhecido."
break;
}
}
tente »
Código de erro:
- Permissão negada - usuário não tem permissão geopositioning
- Posição indisponíveis - Não é possível obter a posição atual
- Timeout - A operação expirou
Mostrar resultados em mapa
Para exibir os resultados em um mapa, você precisa de acesso pode usar a latitude ea longitude de serviços de mapas, como o Google Maps ou Baidu mapa:
Exemplos
{
var Latlon = position.coords.latitude + "," + position.coords.longitude;
var img_url = "http://maps.googleapis.com/maps/api/staticmap?center="
+ Latlon + "& zoom = 14 & size = 400x300 & sensor = false";
document.getElementById ( "mapholder") innerHTML = "<img src = '" + img_url + ""> ".;
}
tente »
No exemplo acima, usamos os dados de latitude e longitude devolvidos pela posição de exibição (usando imagens estáticas) no Google Maps.
roteiro Google Maps
O link acima mostra como usar um script para exibir um mapa interativo com um marcador, zoom e opções de arrasto.
Para a localização informação dada
Esta página demonstra como exibir a localização do usuário em um mapa. Contudo informações de geolocalização para um determinado local também é muito útil.
exemplo:
- Atualizar as informações locais
- pontos de exibição de interesse ao redor do usuário
- carro sistema de navegação interativa (GPS)
getCurrentPosition () Método - dados de retorno
T se bem sucedida, getCurrentPosition () retorna um objeto. Sempre retorna latitude, longitude e precisão propriedades. Se estiver disponível, a seguinte propriedade adicional é retornado.
属性 | 描述 |
---|---|
coords.latitude | 十进制数的纬度 |
coords.longitude | 十进制数的经度 |
coords.accuracy | 位置精度 |
coords.altitude | 海拔,海平面以上以米计 |
coords.altitudeAccuracy | 位置的海拔精度 |
coords.heading | 方向,从正北开始以度计 |
coords.speed | 速度,以米/每秒计 |
timestamp | 响应的日期/时间 |
Geolocation objeto - outros métodos interessantes
watchPosition () - Retorna a posição atual do usuário, e continuar a retornar a posição atualizada (como o GPS em um carro) quando o usuário move.
clearWatch () - Parar watchPosition () Método
O exemplo a seguir mostra método watchPosition (). Você precisa de um dispositivo GPS precisa para testar os casos (como o iPhone):
Exemplos
getLocation function ()
{
Se (navigator.geolocation)
{
navigator.geolocation.watchPosition (showPosition);
}
mais
{
x.innerHTML = "Este navegador não suporta ficar localização.";
}
}
showPosition função (posição)
{
x.innerHTML = "Lat:" + + position.coords.latitude
"<br> Longitude:" + position.coords.longitude;
}
tente »