【问题标题】:open image in new window blank page appearing javascript在新窗口中打开图像出现javascript的空白页面
【发布时间】:2019-02-28 19:11:19
【问题描述】:

从这个答案中获取参考后

Open image in new window

我做了同样的代码。

function openImage() {
    var largeImage = document.getElementById('viewImage');
    largeImage.style.display = 'block';
    largeImage.style.width = 200 + "px";
    largeImage.style.height = 200 + "px";
    var url = largeImage.getAttribute('src');
    window.open(url, 'Image', 'width=largeImage.stylewidth,height=largeImage.style.height,resizable=1');
}

但是当这个函数执行时,会显示空白页 当我在控制台中查看图像 src 时,它显示了正确的数据。

我的 img 元素也正确地显示了我的图像,

但这就是我的页面的显示方式

你认为我的代码有什么问题?

【问题讨论】:

  • 能否提供完整的html代码?
  • 你能发布实际的 HTML 内容而不是屏幕截图吗?
  • 该解决方案适用于以实际 url 作为 src 的图像,对于以 base64 编码数据作为 src 的图像,请参阅stackoverflow.com/questions/27798126/…

标签: javascript html image window


【解决方案1】:

该解决方案适用于以实际 url 作为 src 的图像,在您的情况下,图像 src 是 base64 编码的字符串而不是 url。

对 Window.open 的 Base64 支持在所有浏览器中都不相同,它适用于 firefox,但不适用于 chrome 和 IE。

所以,你可以试试这个

function openImage() {
    var largeImage = document.getElementById('viewImage');
    largeImage.style.display = 'block';
    largeImage.style.width = 200 + "px";
    largeImage.style.height = 200 + "px";

    var w = window.open("");
    w.document.write(largeImage.outerHTML);
}

【讨论】:

  • 无法读取空属性文档` w.document.write(largeImage.outerHTML);`
  • 根据developer.mozilla.org/en-US/docs/Web/API/Window/open,如果窗口无法打开,window.open 返回 null。您可以发布您尝试过的确切代码吗?
  • 我解决了这个问题
  • 我需要在我的 chrome 中允许弹出窗口
  • 很好:) 玩得开心
猜你喜欢
  • 2010-09-21
  • 2011-02-03
  • 2017-03-29
  • 1970-01-01
  • 2011-10-31
  • 1970-01-01
  • 1970-01-01
  • 2023-04-07
  • 1970-01-01
相关资源
最近更新 更多