Javascript 未捕获引用错误:未定义google
我看到了十几个标题相同的问题&问题。在经历了所有这些问题并对代码进行了更改之后,我无法解决这个问题 我的谷歌地图很好用。但在控制台中,会显示此错误。谁能帮我解决这个问题吗 我在head标记中指定了JavaScript代码Javascript 未捕获引用错误:未定义google,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我看到了十几个标题相同的问题&问题。在经历了所有这些问题并对代码进行了更改之后,我无法解决这个问题 我的谷歌地图很好用。但在控制台中,会显示此错误。谁能帮我解决这个问题吗 我在head标记中指定了JavaScript代码 <script> function loadScript() { var myKey = "__API-Key__"; var script = document.createElement("script"); scrip
<script>
function loadScript()
{
var myKey = "__API-Key__";
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://maps.googleapis.com/maps/api/js?key="+myKey+"&sensor=false&callback=initialize";
document.body.appendChild(script);
}
window.onload = loadScript;
</script>
<script>
function initialize()
{
var laa=-34.397;
var lonn= 150.644;
var mapOptions =
{
zoom: 7,
center: new google.maps.LatLng(laa, lonn),
mapTypeId: google.maps.MapTypeId.ROADMAP,
maxZoom: 8,
minZoom:2
};
var map = new google.maps.Map(document.getElementById('location-canvas'),
mapOptions);
var marker = new google.maps.Marker({
map: map,
draggable: false,
position: new google.maps.LatLng(laa, lonn)
});
function bind(eventName)
{
google.maps.event.addListener(map, eventName, function ()
{
common();
});
}
bind('zoom_changed');
bind('center_changed');
bind('tilesloaded');
bind('idle');
function common()
{
var bounds = map.getBounds();
var southWest = bounds.getSouthWest();
var northEast = bounds.getNorthEast();
var getcentre=bounds.getCenter();
var ne = map.getBounds().getNorthEast();
var sw = map.getBounds().getSouthWest();
var zoom=map.getZoom();
var centre_lat=getcentre.lat();
var centre_long=getcentre.lng();
var myLatlng=new google.maps.LatLng(centre_lat,centre_long);
var mapProp =
{
center: new google.maps.LatLng(centre_lat,centre_long),
zoom:zoom,
maxZoom: 8,
minZoom:2,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
}
}
google.maps.event.addDomListener(window, 'resize', initialize);
google.maps.event.addDomListener(window, 'load', initialize);
</script>
函数loadScript()
{
var myKey=“\uuuuAPI-Key\uuuuu”;
var script=document.createElement(“脚本”);
script.type=“text/javascript”;
script.src=”http://maps.googleapis.com/maps/api/js?key=“+myKey+”&sensor=false&callback=initialize”;
document.body.appendChild(脚本);
}
window.onload=loadScript;
函数初始化()
{
var laa=-34.397;
var lonn=150.644;
var映射选项=
{
缩放:7,
中心:新google.maps.LatLng(laa,lonn),
mapTypeId:google.maps.mapTypeId.ROADMAP,
最大缩放:8,
最小缩放:2
};
var map=new google.maps.map(document.getElementById('location-canvas'),
地图选项);
var marker=new google.maps.marker({
地图:地图,
可拖动:错误,
职位:新google.maps.LatLng(laa,lonn)
});
函数绑定(eventName)
{
google.maps.event.addListener(映射、事件名称、函数()
{
普通();
});
}
绑定('zoom_changed');
绑定(“更改中心”);
绑定('tilesloadded');
绑定(“空闲”);
函数公共()
{
var bounds=map.getBounds();
var soutwest=bounds.getsoutwest();
var northEast=bounds.getNorthEast();
var getCenter=bounds.getCenter();
var ne=map.getBounds().getNorthEast();
var sw=map.getBounds().getSouthWest();
var zoom=map.getZoom();
var center_lat=getcenter.lat();
var center_long=getcenter.lng();
var mylatng=new google.maps.LatLng(center\u lat,center\u long);
var mapProp=
{
中心:新google.maps.LatLng(中拉,中长),
缩放:缩放,
最大缩放:8,
minZoom:2,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
}
}
google.maps.event.addDomListener(窗口“调整大小”,初始化);
google.maps.event.addDomListener(窗口“加载”,初始化);
内体标签:
<div id='location-canvas' style='width:100%;height:500px;'>
</div>
您不需要包含下面两行,因为您已经用
http://maps.googleapis.com/maps/api/js?key=“+myKey+”&sensor=false&callback=initialize
所以要么使用
如果没有函数调用,则直接将其放在文档上
或删除
google.maps.event.addDomListener(window, 'resize', initialize);
google.maps.event.addDomListener(window, 'load', initialize);
e、 g:
函数初始化()
{
var laa=-34.397;
var lonn=150.644;
var映射选项=
{
缩放:7,
中心:新google.maps.LatLng(laa,lonn),
mapTypeId:google.maps.mapTypeId.ROADMAP,
最大缩放:8,
最小缩放:2
};
var map=new google.maps.map(document.getElementById('location-canvas'),
地图选项);
var marker=new google.maps.marker({
地图:地图,
可拖动:错误,
职位:新google.maps.LatLng(laa,lonn)
});
函数绑定(eventName)
{
google.maps.event.addListener(映射、事件名称、函数()
{
普通();
});
}
绑定('zoom_changed');
绑定(“更改中心”);
绑定('tilesloadded');
绑定(“空闲”);
函数公共()
{
var bounds=map.getBounds();
var soutwest=bounds.getsoutwest();
var northEast=bounds.getNorthEast();
var getCenter=bounds.getCenter();
var ne=map.getBounds().getNorthEast();
var sw=map.getBounds().getSouthWest();
var zoom=map.getZoom();
var center_lat=getcenter.lat();
var center_long=getcenter.lng();
var mylatng=new google.maps.LatLng(center\u lat,center\u long);
var mapProp=
{
中心:新google.maps.LatLng(中拉,中长),
缩放:缩放,
最大缩放:8,
minZoom:2,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
}
}
google.maps.event.addDomListener(窗口“调整大小”,初始化);
google.maps.event.addDomListener(窗口“加载”,初始化);
这应该可以正常工作。控制台上的错误是什么??别担心。这是一个假的API密钥。“ReferenceError:google未定义”并不重要&它指向js代码的最后两行。即使我对此进行了评论,错误依然存在@我认为您不需要
loadScript()
函数,您可以这样做。而且,如果在initialize()
函数之后调用loadScript
,则调用肯定会失败。因此,在调用google
方法之前,请确保确实链接了mapsapi。加载脚本的顺序也没有错。他只应该删除窗口加载/调整侦听器,以消除错误,我认为这是OP所要求的。
<script src="http://maps.googleapis.com/maps/api/js?key="+__API-Key__+"&sensor=false"></script>
<script>
function initialize()
{
var laa=-34.397;
var lonn= 150.644;
var mapOptions =
{
zoom: 7,
center: new google.maps.LatLng(laa, lonn),
mapTypeId: google.maps.MapTypeId.ROADMAP,
maxZoom: 8,
minZoom:2
};
var map = new google.maps.Map(document.getElementById('location-canvas'),
mapOptions);
var marker = new google.maps.Marker({
map: map,
draggable: false,
position: new google.maps.LatLng(laa, lonn)
});
function bind(eventName)
{
google.maps.event.addListener(map, eventName, function ()
{
common();
});
}
bind('zoom_changed');
bind('center_changed');
bind('tilesloaded');
bind('idle');
function common()
{
var bounds = map.getBounds();
var southWest = bounds.getSouthWest();
var northEast = bounds.getNorthEast();
var getcentre=bounds.getCenter();
var ne = map.getBounds().getNorthEast();
var sw = map.getBounds().getSouthWest();
var zoom=map.getZoom();
var centre_lat=getcentre.lat();
var centre_long=getcentre.lng();
var myLatlng=new google.maps.LatLng(centre_lat,centre_long);
var mapProp =
{
center: new google.maps.LatLng(centre_lat,centre_long),
zoom:zoom,
maxZoom: 8,
minZoom:2,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
}
}
google.maps.event.addDomListener(window, 'resize', initialize);
google.maps.event.addDomListener(window, 'load', initialize);
</script>
<div id='location-canvas' style='width:100%;height:500px;'>
</div>