1

我需要在我的 Angular 应用程序中显示几个 iframe。

为此,我的 HTML 就像

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

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

然后我的IFrame不来,自然不来。

但是当 Iframe 无法正确加载时,我想显示替代文本。像 Image 标签有和 alt 属性。

当 Iframe 无法加载时,我需要一些方法来显示替代文本。

AngularJS 和纯 JavaScript 解决方案是最需要的。

提前致谢。

4

1 回答 1

0

我找到了解决您问题的方法:

这个想法是在设置 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()是一个虚构的功能,用于显示您将代码放在哪里,以防万一失败!

我希望这对你有用。

于 2014-10-21T14:25:48.713 回答