Я пишу веб-приложение, для которого требуется текущая геолокация пользователя. Для определения геолокации я использовал следующий код, который использует API геолокации HTML5. Я взял этот код из W3schools.
<!DOCTYPE html>
<html>
<body>
<p id="demo">Click the button to get your coordinates:</p>
<button onclick="getLocation()">Try It</button>
<script>
var x=document.getElementById("demo");
function getLocation()
{
if (navigator.geolocation)
{
navigator.geolocation.getCurrentPosition(showPosition);
}
else{x.innerHTML="Geolocation is not supported by this browser.";}
}
function showPosition(position)
{
x.innerHTML="Latitude: " + position.coords.latitude +
"<br>Longitude: " + position.coords.longitude;
}
</script>
</body>
</html>
Я запустил этот код с Tomcat, но он не работает ни в Firefox, ни в Chrome. Затем я попробовал этот код с помощью «Попробуй сам» в W3Schools, и даже там он не работает ни в Firefox, ни в Chrome. Я за прокси.
Я ввел оператор alert() в начале тела функции showPosition(), и он не был вызван. Так что кажется, что эта функция вообще не вызывается. Я понятия не имею, как это исправить. Мне очень нужно это исправить. Ранее я уже публиковал эту проблему, но не получил ответа, вероятно, из-за того, что не четко сформулировал проблему. Итак, я снова публикую проблему.
Есть ли другой способ получить геолокацию пользователей, которые обращаются к этому приложению через компьютеры. Пожалуйста, помогите. Спасибо.
EDIT: я разместил этот файл на Tomcat. Каждый раз, когда я выполняю, он дает код ошибки 3, то есть тайм-аут. Но я выполнил тот же Javascript два месяца назад. Тогда он исполнялся идеально. Это проблема с текущей версией моего браузера?