如何只在一个国家和操作系统中运行javascript函数?

时间:2017-04-29 01:45:54

标签: javascript html function blogger

2 个答案:

答案 0 :(得分:7)

浏览器采用了一些安全功能来阻止JavaScript在未经用户同意的情况下获取用户的位置。现在,您可以使用以下代码获取用户的位置。它将打开一个提示窗口,供用户获取他/她的位置。

var recieveLocation = function(pos) {
    console.log(pos); // Latitude and Longitude Info 
}

navigator.geolocation.getCurrentPosition(recieveLocation);

上面的代码将返回用户的地理位置。您需要使用第三方服务解码经度和纬度以获取国家/地区信息。

例如,请查看Google地图地理编码服务API:
https://developers.google.com/maps/documentation/javascript/examples/geocoding-simple

注意:大多数Web浏览器都需要HTTPS才能运行代码。检查控制台是否有错误消息。对于Mozilla Firefox,它会说:

  

[Deprecation] getCurrentPosition()和watchPosition()不再适用于不安全的起源。要使用此功能,您应该考虑将应用程序切换到安全的来源,例如HTTPS。

您需要在域上安装SSL证书,以便浏览器可以信任该网站以允许获取用户的地理位置。

答案 1 :(得分:0)

navigator.language字符串包含“县代码”。

navigator.platform字符串包含操作系统和计算机处理器类型。

两者都可以被欺骗。

另一种方法是利用html form向用户询问他们目前居住或认同的“国家/地区”。