我正在使用IonicFramework与phonegap-googlemaps-plugin开发一个应用程序,当用户点击infoWindow的标记时,它会调用confirm函数,然后在 true时调用launchNavigation
我的问题是,如果我使用原生确认功能,效果很好,但当我尝试使用 $ionicPopup.confirm({}) 时,我无法点击确认按钮。看起来我一直在点击地图。
我已经尝试更改类' popup-containe '的z-index属性,但似乎没有按照我预期的方式工作。
data.map(function (m) {
var latLng = new plugin.google.maps.LatLng(m.lat, m.lng)
latLngs.push(latLng);
map.addMarker({
position: latLng,
title: m.placa,
snippet: 'Clique para ir nessa localização.',
styles : {
'text-align': 'center',
'font-weight': 'bold'
}
}, function (marker) {
marker.addEventListener(plugin.google.maps.event.INFO_CLICK, function(marker) {
var confirm = $ionicPopup.confirm({
title: m.placa,
template: 'Abrir navegação para essa localização?',
okText: 'Sim',
cancelText: 'Não'
})
document.getElementsByClassName('popup-container')[0].style.zIndez = 999999;
confirm.then(function (response) {
if (response) {
map.getMyLocation(function (location) {
mobileLocation = location.latLng;
marker.getPosition(function(markerLocation) {
plugin.google.maps.external.launchNavigation({
'from': mobileLocation,
'to': markerLocation
});
})
})
}
})
$timeout(function() {
confirm.close();
}, 3000);
/*
if (confirm("Abrir direção para " + m.placa)) {
map.getMyLocation(function(location) {
mobileLocation = location.latLng;
marker.getPosition(function (markerLocation) {
plugin.google.maps.external.launchNavigation({
"from": mobileLocation,
"to": markerLocation
});
});
});
}
*/
});
});
});
由于
答案 0 :(得分:-1)
简单就是你只需设置
在map.setClickable(false)
之后显示$ionicPopup
时 map.setClickable(true).
完美无缺。