如何使用JQuery隐藏iframe div

时间:2014-12-09 09:34:38

标签: jquery html iframe

尝试使用.contents()方法在iframe中隐藏div元素,然后从给定的iframe中获取所需的元素并隐藏它,但它无法正常工作。

$(document).ready(function(){
  $('#myframe').contents().find('#logo-events').hide();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<iframe id="myframe" src="http://api.jquery.com/contents"  border="0" scrolling="yes" frameborder="0" width="100%"  style="min-height:600px"></iframe>

1 个答案:

答案 0 :(得分:2)

查看您的JavaScript错误控制台

  

未捕获的SecurityError:沙箱访问冲突:阻止“http://api.jquery.com”的框架访问“null”的框架。两个框架都是沙盒,缺少“allow-same-origin”标志。

iframe的内容与您运行JavaScript的页面的来源不同。相同的源策略会阻止您的代码访问数据。 (想象一下,如果这是某人的网上银行网站,你应该能够看到原因)。

如果你控制了另一个网站(因为你(可能)不适用于jQuery,你没有),那么你可以使用postMessage来触发该网站提供的事件处理程序隐藏。