我正在尝试使用google的jsapi获取客户端的当前位置,但我将'google.loader'视为未定义。不知道为什么会发生这种情况?以下是我使用的代码片段。
$.getScript('http://www.google.com/jsapi', function()
{
if(google.loader.ClientLocation) {
var visitor_lat = google.loader.ClientLocation.latitude;
var visitor_lon = google.loader.ClientLocation.longitude;
var visitor_city = google.loader.ClientLocation.address.city;
var visitor_region = google.loader.ClientLocation.address.region;
var visitor_country = google.loader.ClientLocation.address.country;
var visitor_countrycode = google.loader.ClientLocation.address.country_code;
console.log("Your location is: " + visitor_country);
}});
答案 0 :(得分:0)
您只需加载http://www.google.com/jsapi
这是基本的google
库,您可以使用该库加载实际的Google模块,例如' ClientLocation'。
使用类似:
google.load("my_library", function () {
google.my_library; // is not available
}
将my_library
更改为您需要的任何内容。
答案 1 :(得分:0)
我今天遇到了同样的问题。
如果您使用的是手机浏览器,并且如果您为浏览器禁用了本地化,则api无法正确加载并抛出js错误(解析错误)。
我用iphone和Android手机测试了它。
启用浏览器的本地化并正常运行!