我见过类似的问题,如下所示。但它们都不适合我。请帮忙。 Find the three letter country code using HTML and Javascript
最佳答案
浏览器采用了一些安全功能来阻止 JavaScript 在未经用户同意的情况下获取用户的位置。现在,您可以使用以下代码获取用户的位置。它将打开一个提示窗口,让用户允许获取他/她的位置。
var recieveLocation = function(pos) {
console.log(pos); // Latitude and Longitude Info
}
navigator.geolocation.getCurrentPosition(recieveLocation);
上面的代码将返回用户的地理位置。您将需要使用第三方服务对这些经度和纬度进行解码,以获取国家/地区信息。
例如,查看 Google map 地理编码服务 API:
https://developers.google.com/maps/documentation/javascript/examples/geocoding-simple
注意:大多数网络浏览器需要 HTTPS 才能运行代码。检查控制台以获取错误消息。对于 Mozilla Firefox,它会说:
[Deprecation] getCurrentPosition() and watchPosition() no longer work on insecure origins. To use this feature, you should consider switching your application to a secure origin, such as HTTPS.
您需要在域上安装 SSL 证书,以便浏览器可以信任该网站以允许获取用户的地理位置。
关于javascript - 如何仅在一个国家和操作系统中运行 javascript 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43691009/