Я хочу, чтобы мой сайт сказал браузеру спросить пользователя "Поделитесь своим местоположением"
Когда местоположение будет общим, я бы хотел, чтобы результат был основан на разных местах,
Таким образом, местоположение A (объединенное королевство) будет выводить div1, div2, div3
Место B (africa) будет выводить div4 div5 div6
и т.д
Это не будет основано на фактических местоположениях домов, но регионах. Возможно ли это, и если да, то как?
Это должно сделать трюк:
index.html:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="init.js"></script>
</head>
<body>
<input type="text" id="location">
<div style="display: none;" id="div1">Div 1</div>
<div style="display: none;" id="div2">Div 2</div>
<div style="display: none;" id="div3">Div 3</div>
<div style="display: none;" id="div4">Div 4</div>
<div style="display: none;" id="div5">Div 5</div>
<div style="display: none;" id="div6">Div 6</div>
</body>
</html>
init.js:
$(document).ready(function($){
$("#location").on("input", function(){
var client = new XMLHttpRequest();
client.open("GET", "https://maps.googleapis.com/maps/api/geocode/json?address=" + $("#location").val() + "&key=API KEY HERE", true);
client.onreadystatechange = function() {
if(client.readyState == 4) {
var results = JSON.parse(client.responseText);
if(results.results[0].address_components[0].short_name == 'GB') {
$('#div1, #div2, #div3').show();
$('#div4, #div5, #div6').hide();
} else if (results.results[0].address_components[0].short_name == 'Africa') {
$('#div4, #div5, #div6').show();
$('#div1, #div2, #div3').hide();
}
};
};
client.send();
});
});
Не забудьте получить свой собственный ключ API здесь: https://developers.google.com/maps/documentation/geocoding/intro#api_key