隐藏iframe

时间:2017-07-11 17:57:50

标签: javascript html

我有一个iframe,我尝试隐藏一个div元素(带有facebook的框架)。



<script type="text/javascript">
function changeCSS(){
	frame = document.getElementById("radar");
	frame.contentWindow.document.getElementById("div_facebook").style.display='none';
}
</script>
&#13;
<iframe name="radar" 
onload="javascript:changeCSS()" 
id="radar" 
width="650" 
height="450" 
frameborder="0" 
scrolling="no" 
src="http://radar.bourky.cz/index.php?lat=49.9847&lon=16.6241&zoom=8&map=0&repeat=3&last=4&r_opa=30&l_opa=10&l_type=0&cell=0&anim=1&c1=0&c2=0&c3=0&c4=0&c5=0">
</iframe>
&#13;
&#13;
&#13;

这是Chrome中控制台的问题:

index.html:85未捕获的DOMException:使用origin&#34; null&#34;阻止了一个帧。从访问跨源框架。     在changeCSS(file:/// D:/jirka/Desktop/kalend%C3%A1%C5%99/index.html:85:21)     在HTMLIFrameElement.onload(file:/// D:/jirka/Desktop/kalend%C3%A1%C5%99/index.html:96:171)

我已经阅读了很多说明,但问题并没有解决。 如果有人能提供帮助,我将非常感激。

1 个答案:

答案 0 :(得分:0)

问题是您无法修改iframe的内容,除非主页和iframe的域都相同。

我猜测你粘贴的内容是不一样的,因为看起来外部是在本地运行而iframe来自一个域(radar.bourky.cz)。

您将无法使用外部JavaScript操作它。这是一个安全预防措施,以防止恶意行为者使用网站做坏事。除非你在内部和外部控制代码,否则你将无法绕过它。