Есть ли простой способ определить, в каком полушарии находится пользователь?
Я работаю над проектом, который включает сезонный контент, и мы думаем об определении местоположения пользователя, чтобы выяснить, какой сезон для них. Очевидный способ сделать это-Гео-найти их IP, а затем захватить широту. > 0-Северное полушарие, а
Я рад пойти этим путем-хотя это кажется немного расточительством, чтобы определить IP-адрес в точное место, просто чтобы определить, на какой половине планеты они находятся , но я думал, что выброшу его там в случае, если у кого-то есть какие-то трюки, которые могут сократить процесс.
заголовки запросов, вещи, которые можно извлечь с помощью JS на клиенте, все это достаточно легко получить - я просто не думаю, что это помогает.
2 ответов
Я бы сначала проверил часы клиента- если в календаре клиента есть летнее время, вы можете сказать, находится ли он к северу или к югу от экватора.
если нет информации dst, вы можете использовать геолокацию,
или спросите пользователя, находится ли он к югу от экватора...
window.whatHemisphere= (function(){
var y= new Date().getFullYear();
if(y.getTimezoneOffset()==undefined) return null;
var jan= -(new Date(y, 0, 1, 0, 0, 0, 0).getTimezoneOffset()),
jul= -(new Date(y, 6, 1, 0, 0, 0, 0).getTimezoneOffset()),
diff= jan-jul;
if(diff> 0) return 'N';
if(diff< 0) return 'S'
return null;
})()
можно использовать навигатор.геолокация метод для избежания любого вида обслуживания ИП.