Javascript 谷歌地图的addListener
我想打印一个谷歌地图后,地图是完全加载 [……]Javascript 谷歌地图的addListener,javascript,google-maps,Javascript,Google Maps,我想打印一个谷歌地图后,地图是完全加载 [……] var directionsService=new google.maps.directionsService(); var映射; var-gh; 函数初始化(){ //警报(“启动功能”); directionsDisplay=new google.maps.DirectionsRenderer(); gh=新的google.maps.LatLng(41.850033,-7.6500523); 变量myOptions={ 缩放:15, map
var directionsService=new google.maps.directionsService();
var映射;
var-gh;
函数初始化(){
//警报(“启动功能”);
directionsDisplay=new google.maps.DirectionsRenderer();
gh=新的google.maps.LatLng(41.850033,-7.6500523);
变量myOptions={
缩放:15,
mapTypeId:google.maps.mapTypeId.ROADMAP,
中心:gh
}
map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
方向显示.setMap(地图);
}
函数calcRoute(){
//警报(“Starte calcRoute”);
//警报(“”);
var start=“Recklinghausen-Akkoallee 45”;
var end=“Recklinghausen”;
var请求={
来源:start,
目的地:完,
travelMode:google.maps.Directions travelMode.DRIVING,
避免:是的,
};
路由(请求、功能(结果、状态){
if(status==google.maps.directionstatus.OK){
方向显示。设置方向(结果);
}
});
google.maps.event.addListenerOnce(map,'idle',function()){
警报('Funktion wird aufgerufen!');
//window.print();
});
}
[……]
但是addListener会在映射启动且未完全加载时触发信息?尝试使用setTimeout函数延迟打印调用
directionsService.route(request, function(result, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(result);
setTimeout(function() { alert('Funktion wird aufgerufen!'); }, 2000);
}
});
这是我能做的最好的了:,但是当我把你的addListenerOnce
改为“tilesloaded”而不是“idle”时,我仍然在图像显示之前收到了警报框。祝你好运
<body onload="initialize();calcRoute();">
directionsService.route(request, function(result, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(result);
setTimeout(function() { alert('Funktion wird aufgerufen!'); }, 2000);
}
});