当第三方请求SRC时如何更改iFrame

时间:2019-03-25 23:28:26

标签: javascript c# jquery iframe

为清楚起见进行了编辑:当其他来源尝试连接时,我想在iFrame中编辑一个元素。

到目前为止我尝试过的:

在页面上(第三方将从中获取我的窗口小部件的页面) 我添加了这个:

function myFunction() {
        var iframe = document.getElementById("myFrame");
        var elmnt = iframe.contentWindow.document.getElementsByTagName("H2") 
        [0];
        elmnt.style.display = "none";
    }

第三方使用的代码将是这样:

<div style="width:80%;">
<iframe id="myFrame" border="0" frameborder="0" 
src="https://example.com"  
frameBorder="0" scrolling="no" style="min-height:1000px;min-width:500px"> 
</iframe>
</div>

按照我的想法,这是行不通的。我很确定,因为iFrame实际上是我的内容,我应该能够根据它们是否已连接对其进行修改,对吗?

我上面的示例仅出于测试目的,试图删除H2。

我愿意接受任何前端方法,或者使用C#进行任何服务器方面的工作。

如果有人可以帮助,将不胜感激。

1 个答案:

答案 0 :(得分:0)

感谢@charlietfl的建议。我已经使用参数在C#中使用它了。

前端:

<h2 id="h2IFrame" runat="server">Hello</h2>

C#中的服务器端

var activepage = Request.RawUrl;
        if (activepage.Contains("?noh2"))
    {
        h2IFrame.Visible = false;
    }
    else
        h2IFrame.Visible = true;

像这样使用iFrame:

<div style="width:80%;">
<iframe id="myFrame" border="0" frameborder="0" 
src="https://example.com?noh2"  
frameBorder="0" scrolling="no" style="min-height:1000px;min-width:500px"> 
</iframe>
</div>