【问题标题】:Squarespace: block iFrame from attempting to open on mobile devicesSquarespace:阻止 iFrame 尝试在移动设备上打开
【发布时间】:2018-04-19 17:07:51
【问题描述】:

我目前正在使用 Squarespace 并在一页上使用 iFrame。 iFrame 覆盖页面的整个宽度(100% 宽度)和几乎整个高度,在顶部为页面导航按钮留出空间。

iFrame 在 Mac 或 PC 台式计算机上完美运行。

但是,如果我在 iPad 或 iPhone 上打开页面,页面会加载 - 然后变得无响应。我无法单击导航栏以移至其他页面。我可以点击的唯一仍然具有功能的东西是主页导航按钮,用于返回我的网站主页。

我联系了 iFrame 中使用的网站,并被告知他们的程序(应用程序)无法在移动设备上运行。

总结一下问题:我的导航包含一个“转到应用程序”按钮。如果单击此导航按钮,用户将被定向到包含 iFrame 的页面。这个带有 iFrame 的页面在 PC 上打开,在移动设备上崩溃。

如果有人从移动设备单击导航按钮“转到应用程序”,我不会让 iFrame 页面崩溃。如何在导航按钮中添加代码,以便 iFrame 页面不会在移动设备上加载,而是给出一条消息“移动设备目前不支持此应用程序”?

非常感谢您的任何建议。

【问题讨论】:

  • 不清楚您的问题是什么:您是否正在寻找一种机制来检测正在使用的设备类型,或者当您知道它是移动设备时如何阻止您的 iframe?
  • 嗨 FDavidov - 感谢您的后续问题。我提前道歉,因为我不熟悉编码 - 但听起来解决方案必须结合这两个概念:1)点击导航按钮时,iFrame代码确定用户是在PC还是移动设备上, 2) 如果用户在 PC 上,则打开带有 iFrame 的页面,如果用户在移动设备上,带有 iFrame 的页面不会打开并给出消息“此应用目前在移动设备上不支持"。
  • 有很多帖子向您展示如何检测设备和浏览器类型。只需提出正确的问题,您就会掌握它们。获得设备后,您可以使用 Horacio 建议的解决方案。

标签: javascript html css iframe mobile


【解决方案1】:

您可以向 iframe 添加一个类并使用媒体查询使其不在移动设备上显示。您还可以添加另一个带有display: none 的 div,以便在移动设备上向用户显示消息。

【讨论】:

  • 只是想感谢您和 FDavidov 的帮助。让它工作!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-21
  • 1970-01-01
  • 1970-01-01
  • 2018-01-05
  • 2012-01-14
相关资源
最近更新 更多