我有一个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;
这是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)
我已经阅读了很多说明,但问题并没有解决。 如果有人能提供帮助,我将非常感激。
答案 0 :(得分:0)
问题是您无法修改iframe的内容,除非主页和iframe的域都相同。
我猜测你粘贴的内容是不一样的,因为看起来外部是在本地运行而iframe来自一个域(radar.bourky.cz
)。
您将无法使用外部JavaScript操作它。这是一个安全预防措施,以防止恶意行为者使用网站做坏事。除非你在内部和外部控制代码,否则你将无法绕过它。