Закройте всплывающее окно, а затем откройте другое окно против открытого, пока открыто другое.
Я хочу показать калибр в моих всплывающих окнах с библиотекой justGage. Он работает нормально, когда я открываю всплывающее окно или когда я закрываю всплывающее окно и открываю другое, но если открытое всплывающее окно я нажимаю на другой маркер, первое всплывающее окно закрывается, как это должно быть, а второе открывается, но датчики не показ.
Вот как я генерирую всплывающие окна:
var myLayer = new L.GeoJSON.AJAX("data/data.geojson", {
onEachFeature: function(feature, layer) {
layer.bindPopup(function (layer) {
$('#myDiv').text();
});
}
});
myDiv - это содержимое всплывающего окна:
<script id="myDiv" type="text/template">
<div>
<div id='gauge1' style='width:60px; height:80px'></div>
</div>
<div>
<div id='gauge2' style='width:60px; height:80px'></div>
</div>
</script>
И я инициализирую датчики, когда открывается всплывающее окно (это единственный способ заставить их работать):
myMarkers.on('popupopen', function(e) {
cargaVelocimetro("gauge1", 22);
cargaVelocimetro("gauge2", 33);
}
);
function cargaVelocimetro(id, valor){
if (!gauge) {
var gauge = new JustGage({
id: id,
value: valor,
min: 0,
max: 100,
gaugeWidthScale: 0.8
});
}
}
Это как факт того, что первое всплывающее окно не закрывается должным образом?
1 ответ
Решение
Как сказал Баптист в комментарии, идентификаторы путаются при открытии второго всплывающего окна, если первое все еще открыто.