Iframe Alt Text当X-Frame-Options:SAMEORIGIN|DENY的Iframe加载错误时

Iframe Alt Text When Iframe load error for X-Frame-Options:SAMEORIGIN | DENY

本文关键字:Iframe DENY 加载 错误 SAMEORIGIN Alt Text X-Frame-Options      更新时间:2023-09-26

我需要在我的Angular应用程序中显示一些Iframe。

为此,我的HTML就像

<iframe ng-src="{{iframeObj.iUrl}}" frameborder="0"></iframe>

但是当Iframes中不允许iUrl时,即X-Frame-Options:SAMEORIGIN或DENY

那么我的IFrame就不会来了,它自然不会来。

但是当Iframe没有正确加载时,我想显示一个替代文本。Like Image标记具有和alt属性。

当Iframe无法加载时,我需要一些显示alt文本的方法。

AngularJS和纯JavaScript解决方案最受欢迎。

提前谢谢。

我为您的问题找到了一个解决方案:

这个想法是在设置src之前设置一个onload事件。

你可以试试这个代码:

document.getElementsByTagName('iframe').onload=function(){
    try{
        var win=this.contentWindow;
        win.closed && error_function();
    }catch(e){
        error_function();
    }
};

查看此处了解其工作原理:http://jsfiddle.net/tec6y2y9/1/

注意:在小提琴上,我做了一些更改,以表明它确实有效!error_function()是一个虚构的函数,用于显示在发生故障时将代码放在哪里!

我希望这对你有用。