【问题标题】:How do I make an if statement using an element in an iframe?如何使用 iframe 中的元素创建 if 语句?
【发布时间】:2019-03-19 08:05:57
【问题描述】:

所以,我正在尝试使当一个元素(在 iframe 内)变为隐藏(显示:无)时,它会使 iframe 没有显示。

我试过了:

var iframe = $('.preloader').contents().find('*');

if((iframe).is(':hidden')) {
  $('.preloader').css('display','none');
}

if($('.preloader').contents().find('*').is(':hidden')) {
  $('.preloader').css('display','none');
}

这两个都不行。

HTML

<iframe class="preloader" src="https://sorrycantsay.net/preloader"></iframe>

这可能会有所帮助:

Detect if an element is visible

Selecting an element in iFrame jQuery

【问题讨论】:

  • iframe 中的预加载器?这对我来说是新鲜事>_
  • 听起来你正在尝试做的事情会违反同源策略 - 除非你的 iframe 与你的父网站在同一个域上?如果不是,你可能不走运..
  • @AlexanderYakushev |预加载器使用的画布由于某种原因不起作用。
  • @BradSullivan |我拥有这两个网站。

标签: javascript jquery iframe


【解决方案1】:

对我来说,使用 iframe 时最简单的方法是使用 postMessage 方法 + onmessage 事件。它使 iframe 和父级之间的通信变得容易。 此处的其他示例:https://javascript.info/cross-window-communication#postmessage

【讨论】:

  • 我可以举一个例子来说明如何做到这一点吗?我需要检查 iframe 中的元素是否隐藏,如果是,则将 iframe 显示为无
猜你喜欢
  • 1970-01-01
  • 2019-08-28
  • 2015-04-26
  • 2019-11-02
  • 2022-01-18
  • 1970-01-01
  • 1970-01-01
  • 2016-09-15
  • 2019-10-03
相关资源
最近更新 更多