在调查仪表板中弹出图像

时间:2019-04-26 20:03:37

标签: javascript html

我正在设置一个调查仪表板,并希望能够单击图像以在另一个窗口中打开。那可以正常工作,但是如果我单击多个图像,则会打开许多​​不同的窗口。有没有一种方法可以使我单击新图像时关闭窗口并打开新窗口?

我能够在单独的新窗口中打开图像。

代码如下所示:

L.CRS.Meters = L.extend(L.CRS, {
    projection: L.extend( L.Projection.LonLat, {
      bounds: L.bounds([0, 0], [2160, 4096])
    }),
    transformation: new L.Transformation(1, 0, -1, 0),
    scale: function (zoom) {
        return Math.pow(2, zoom);
    },
    infinite: false
});

var customCRS = L.extend(L.CRS.Simple, {
  projection: L.extend( L.Projection.LonLat, {
     bounds: L.bounds([0, 0], [2160, 4096])
  }),
  transformation: new L.Transformation(1, 0, 1, 0),
  scale: function (zoom) {
    return Math.pow(2, zoom +7);
  },
  infinite: false
});

var map = L.map('vm', { zoomSnap: 0.2, crs: customCRS}).setView([3, 3], 3);

当您打开新图像或用新图像替换旧图像时,希望关闭一个图像窗口。

2 个答案:

答案 0 :(得分:1)

不。创建新窗口后,单击其他图像将无法关闭它。那是不可能的。

您可以在同一窗口中显示图像,而不是创建新窗口。

请尝试以下方法。

  1. 模态图像 https://www.w3schools.com/howto/howto_css_modal_images.asp

  2. 灯箱 https://www.w3schools.com/howto/howto_js_lightbox.asp

  3. 图片库 https://www.w3schools.com/howto/howto_js_tab_img_gallery.asp

答案 1 :(得分:0)

所有对话框都具有“ ui-dialog-content”类,因此请选择该类并在打开新对话框之前将其关闭。

$(".ui-dialog-content").dialog("close");

http://api.jqueryui.com/dialog/