我试图通过js访问用户位置。代码似乎工作正常,但不适用于chrome。编码时,chrome会通知我它试图访问我的位置但是当我从文件中运行它时,我无法允许它。就是它确实让我允许它并且它工作得很好。
我很快将它上传到一个免费的托管网站,以便在Chrome上进行测试,现在它甚至没有achnologde它想要我的位置,它就像功能甚至没有运行。我在ie上运行它并且完全正常。
代码:
Date.prototype.Today = function () {
return ((this.getDate() < 10)?"0":"") + this.getDate() +"/"+(((this.getMonth()+1) < 10)?"0":"") + (this.getMonth()+1) +"/"+ this.getFullYear();
}
Date.prototype.Time = function () {
return ((this.getHours() < 10)?"0":"") + this.getHours() +":"+ ((this.getMinutes() < 10)?"0":"") + this.getMinutes() +":"+ ((this.getSeconds() < 10)?"0":"") + this.getSeconds();
}
var DateTime = new Date().Today() + " " + new Date().Time();
var Latitude = "Unavailable";
var Longitude = "Unavailable";
IP = GetIP("https://api.ipify.org/");
initGeolocation();
function GetIP(theUrl)
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", theUrl, false );
xmlHttp.send( null );
return xmlHttp.responseText;
}
function initGeolocation()
{
if( navigator.geolocation )
{
navigator.geolocation.getCurrentPosition(success);
}
}
function success(position)
{
Latitude = position.coords.latitude;
Longitude = position.coords.longitude;
document.write(DateTime + " " + IP + " " + Latitude + " " + Longitude);
}
document.write(DateTime + " " + IP + " " + Latitude + " " + Longitude);
答案 0 :(得分:0)
选择设置
单击“显示高级设置”。
在&#34;隐私&#34;部分,单击内容设置。
在显示的对话框中,向下滚动到&#34;位置&#34;部分。选择未来位置请求的默认权限:
允许所有网站跟踪您的实际位置:选择此选项可让所有网站自动访问您的位置。