freeCodeCamp/curriculum/challenges/russian/04-data-visualization/json-apis-and-ajax/get-geolocation-data-to-fin...

3.5 KiB
Raw Blame History

id title challengeType videoUrl localeTitle
587d7faf367417b2b2512be8 Get Geolocation Data to Find A User's GPS Coordinates 6 Получите данные геолокации, чтобы найти GPS-координаты пользователя

Description

Еще одна интересная вещь, которую вы можете сделать, - это доступ к текущему местоположению вашего пользователя. Каждый браузер имеет встроенный навигатор, который может предоставить вам эту информацию. Навигатор получит текущую долготу и широту пользователя. Вы увидите приглашение разрешить или заблокировать этот сайт, зная ваше текущее местоположение. Задача может быть завершена в любом случае, если код верен. Выбрав allow, вы увидите, что текст на выходном телефоне изменится на широту и долготу. Вот код, который делает это:
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition (функция (позиция) {
document.getElementById ('data'). innerHTML = "широта:" + position.coords.latitude + "<br> долгота:" + position.coords.longitude;
});
}
Во-первых, он проверяет navigator.geolocation объекта navigator.geolocation . Если это так, getCurrentPosition метод getCurrentPosition для этого объекта, который инициирует асинхронный запрос для позиции пользователя. Если запрос выполнен успешно, выполняется функция обратного вызова в методе. Эта функция осуществляет доступ к значениям объекта position для широты и долготы с использованием точечной нотации и обновляет HTML.

Instructions

undefined

Tests

tests:
  - text: ''
    testString: 'assert(code.match(/navigator\.geolocation\.getCurrentPosition/g), "Your code should use <code>navigator.geolocation</code> to access the user&#39;s current location.");'
  - text: ''
    testString: 'assert(code.match(/position\.coords\.latitude/g), "Your code should use <code>position.coords.latitude</code> to display the user&#39;s latitudinal location.");'
  - text: ''
    testString: 'assert(code.match(/position\.coords\.longitude/g), "Your code should use <code>position.coords.longitude</code> to display the user&#39;s longitudinal location.");'
  - text: ''
    testString: 'assert(code.match(/document\.getElementById\(\s*?("|")data\1\s*?\)\.innerHTML/g), "You should display the user&#39;s position within the <code>data</code> div element.");'

Challenge Seed

<script>
  // Add your code below this line


  // Add your code above this line
</script>
<h4>You are here:</h4>
<div id="data">

</div>

Solution

// solution required