将地理位置加载到输入框中

时间:2014-11-14 05:09:46

标签: javascript html5 geolocation

我的网页上有一个功能,可以获取用户的地理位置。如何在不使用OnClick功能加载页面时自动将纬度和经度加载到输入框中?

function showlocation() {
   // One-shot position request.
   navigator.geolocation.getCurrentPosition(callback);
}

function callback(position) {
   document.getElementById('latitude').innerHTML = position.coords.latitude;
   document.getElementById('longitude').innerHTML = position.coords.longitude;
}

2 个答案:

答案 0 :(得分:1)

function showlocation() {
  navigator.geolocation.getCurrentPosition(callback);
}

function callback(position) {
  document.getElementById('latitude').value = position.coords.latitude;
  document.getElementById('longitude').value = position.coords.longitude;
}

window.onload = function () {
  showlocation();
}

  <input type="text" id="latitude">
  <input type="text" id="longitude">

答案 1 :(得分:1)

这行代码监听加载所有HTML的时间,并在DOM准备好被操作后立即调用showLocation。

window.addEventListener('DOMContentLoaded', showLocation);

您接受的答案确实有效,但DOMContentLoaded通常要快得多,这为您提供了更具响应性的用户界面。

支持证明: Difference between DOMContentLoaded and Load events