代码之家  ›  专栏  ›  技术社区  ›  ssk

如何在iframe上显示图像?

  •  1
  • ssk  · 技术社区  · 6 年前

    我有一个div包含一个iframe:

    <div class="embed-responsive embed-responsive-16by9" id="camera_view_div">
        <iframe allowfullscreen="true" class="embed-responsive-item container well well-small span6" frameborder="0" id="camera_view" mozallowfullscreen="true" msallowfullscreen="true" oallowfullscreen="true" src="" webkitallowfullscreen="true">
        </iframe>
    </div>
    

    我有一个来自服务器的图像url,我正试图将iframe的src设置为图像url。但它会在更新时开始下载图像url。

            cameraView.src = event.info.data['image_url']; 
    

    如何在iframe上设置图像url并显示它?

    1 回复  |  直到 6 年前
        1
  •  3
  •   mxcoder    6 年前

    正如CrappedCola所说,这是iframes的一个奇怪用法,但我假设您对此有一个有力的论据。

    我可以想出两种可能的解决方案:

    1. 服务器发送的图像的标题不正确 为了在iframe中显示它,浏览器可能只是 将其解释为要下载的二进制文件。检查你是否能调整它们。

    https://jsfiddle.net/0ftobver/2/ <<检查占位符图像的标题

    1. 使用 srcdoc 或者在iframe中注入html,比如:

    cameraView.srcdoc = '<!html doctype><style>*{padding:0;margin:0}</style><img src="https://via.placeholder.com/350x150">'

    https://jsfiddle.net/q3rvd418/2/

    注射是相似的,但是 contentDocument iframe的属性。