jQuery / Javascript:从iframe内部设置iframe的边框

时间:2012-07-25 11:53:08

标签: javascript jquery html

我有一个iframe,我想将它的边框设置为零。

但我希望使用javascript或jQuery从内部 iframe执行此操作。

怎么做?非常感谢,

3 个答案:

答案 0 :(得分:3)

您可以通过$(parent.document).find('#myIframe').css('border', 'xxxx');执行此操作 - 但正如上面的评论所指出的那样,两个网页(主要网页以及iframe中显示的网页)应该位于同一个网域中 - 否则您就会#39 ;由于相同的原始策略,最终会出现安全例外。

答案 1 :(得分:3)

如果父母的姓氏不同,则不能这样做,因为Same Origin Policy禁止访问父母的内容。

如果父文档位于同一个原点,则应执行此操作:

(function() {
  var frames = window.parent.document.getElementsByTagName("iframe"),
      index,
      frame;

  for (index = 0; index < frames.length; ++index) {
    frame = frames[index];
    if (frame.contentWindow == window) {
      frame.frameBorder = "none";
    }
  }
})();

Live example | source of parent | source of frame

请注意,在比较==属性时,使用===而不是window非常重要(异常,window是特殊的)。

答案 2 :(得分:2)

或者您可以使用parent。$

parent.$("iframe").prop("frameborder", 0); // This will change all iframes
parent.$("#IframeID").prop("frameborder", 0); // This will change single iframe