我正在尝试使用谷歌地理编码作为后备向站点添加地理位置功能,到目前为止它可以与 chrome 一起正常工作。当我在 Firefox 中试用它时,它不仅显示位置提示,这是我的代码
function add_location() {
if (navigator.geolocation)
{
$("#pheed-location").fadeIn();
$('.loading-indicator').fadeIn();
navigator.geolocation.getCurrentPosition(handle_geolocation_query, handle_location_errors);
}
}
function parseLocationError(error)
{
switch(error.code)
{
case error.PERMISSION_DENIED:
errorMsg = "User did not share geolocation data";
code = 1;
break;
case error.POSITION_UNAVAILABLE:
errorMsg = "Could not detect your current position";
code = 2;
break;
case error.TIMEOUT:
errorMsg = "Retrieving position timedout";
code = 2;
break;
default:
errorMsg = "Unknown error";
code = 0;
break;
}
var _error = {"msg":errorMsg,"code":code};
return _error;
}
/**
* Handles error from geolocation
* @param error object
**/
function handle_location_errors(error) {
var msgDisplay = $('.loading-indicator');
//Error message
var errorMsg ="";
console.log(error);
//Set error message base on error code
var Error = parseLocationError(error);
if((Error.code === 1) || (Error.code === 2)) {
msgDisplay.html('').fadeOut();
msgDisplay.html(Error.msg).fadeIn();
if(Error.code === 2)
$("#location-entry").fadeIn();
}
}
我添加了“console.log(error)”以确保返回错误。这些错误在 chrome 中正确记录,但在 Firefox 中似乎根本不起作用。可能是什么问题呢?