关闭弹出窗口然后打开另一个与打开弹出窗口同时打开另一个弹出窗口
Close popup and then open another vs. opening popup while another one is open
我想使用 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
});
}
}
这就像没有正确关闭第一个弹出窗口以某种方式影响传单的事实?
正如 Baptiste 在评论中所说,如果第一个弹出窗口仍然打开,则在打开第二个弹出窗口时 ID 会混淆。
我想使用 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
});
}
}
这就像没有正确关闭第一个弹出窗口以某种方式影响传单的事实?
正如 Baptiste 在评论中所说,如果第一个弹出窗口仍然打开,则在打开第二个弹出窗口时 ID 会混淆。