【问题标题】:iframe's html content not visible in Edge and Internet exploreriframe 的 html 内容在 Edge 和 Internet Explorer 中不可见
【发布时间】:2025-12-22 18:05:12
【问题描述】:

这是我的 Angular 应用程序代码

<div class="with-border" layout="column" flex>
            <iframe class="no-pointer-events" flex ng-attr-srcdoc="{{vm.campaign.body | toTrustedHTML}}" width="100%" frameborder="0" sandbox="allow-scripts allow-same-origin allow-top-navigation"></iframe>
</div>

它在除 IE 和 Edge 之外的所有浏览器中都能正常工作。

【问题讨论】:

  • 设置 IE 以记录被阻止的内容、xss 和安全错误和警告。工具>Internet 选项>高级选项卡,选中“始终记录开发者控制台消息”。在 IE 中加载您的测试/生产站点...。使用“文件”>“属性”菜单来确定您的测试/生产站点映射到哪个 IE 安全区域...预期的 Internet。按 F12 显示开发工具...它现在将显示被阻止内容的警告和错误。使用开发工具的 DOM Explorer 选项卡检查“计算”页面源...(不是角度)源检查 IE 的 ActiveX 过滤是否打开或关闭。
  • 在您的问题中包含指向您的网站或 jsfiddle 混搭的链接。
  • 它不会在控制台中显示任何警告或错误消息。我无法分享链接,这是一个付费应用。

标签: angularjs internet-explorer iframe microsoft-edge


【解决方案1】:

IE 和 Edge 不支持 srcdoc 属性。 你可以在这里查看: https://www.w3schools.com/tags/att_iframe_srcdoc.asp 您可以为这些浏览器使用src 属性,但不要忘记对于动态值和绑定,您应该使用ng-src

【讨论】: