【问题标题】:Run extension in iframes only仅在 iframe 中运行扩展
【发布时间】:2014-10-15 08:30:03
【问题描述】:

我正在编写一个扩展程序,我希望部分代码仅在 iframe 中运行。目前,我的 extensuin.js 文件中的所有代码都在页面和 iframe 中运行如何检测代码在 iframe 中运行,以便我可以运行 iframe 特定代码?

作为一个例子(这不是真正的代码)我的 extension.js 应该是这样的:

appAPI.ready(function($) {
  if (iframe) {
    // Run iframe code
  } else {
    // Run on regular page
  }
});

【问题讨论】:

  • @Inferpse 您的评论实际上并不正确,因为在运行扩展程序的上下文时,您引用的票证中的响应并非在所有情况下都有效。请参阅我的答案以了解正确的方法。 [披露:我是 Crossrider 的员工]

标签: javascript iframe cross-browser browser-extension crossrider


【解决方案1】:

您可以通过使用appAPI.dom.isFrame 来确定您的扩展代码是否在 iframe 中运行来实现您的目标。因此,使用您的示例,代码将是:

appAPI.ready(function($) {
  if (appAPI.dom.isFrame()) {
    // Run iframe code
  } else {
    // Run on regular page
  }
});

[披露:我是 Crossrider 的员工]

【讨论】:

    猜你喜欢
    • 2016-01-21
    • 1970-01-01
    • 2014-01-08
    • 2018-12-02
    • 1970-01-01
    • 2012-07-03
    • 2018-06-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多