Javascript 仅在iframe中运行扩展
我正在编写一个扩展,我希望部分代码只在iFrame中运行。目前,extensuin.js文件中的所有代码都在页面和iframe中运行。如何检测代码是否在iframe中运行,以便运行特定于iframe的代码 举个例子(这不是真正的代码),我的extension.js应该是:Javascript 仅在iframe中运行扩展,javascript,iframe,cross-browser,browser-extension,crossrider,Javascript,Iframe,Cross Browser,Browser Extension,Crossrider,我正在编写一个扩展,我希望部分代码只在iFrame中运行。目前,extensuin.js文件中的所有代码都在页面和iframe中运行。如何检测代码是否在iframe中运行,以便运行特定于iframe的代码 举个例子(这不是真正的代码),我的extension.js应该是: appAPI.ready(function($) { if (iframe) { // Run iframe code } else { // Run on regular page } });
appAPI.ready(function($) {
if (iframe) {
// Run iframe code
} else {
// Run on regular page
}
});
您可以通过使用来确定扩展代码是否在iframe中运行来实现目标。因此,使用您的示例,代码是:
appAPI.ready(function($) {
if (appAPI.dom.isFrame()) {
// Run iframe code
} else {
// Run on regular page
}
});
[披露:我是一名Crossrider员工]可能的重复:@Inferpse您的评论实际上并不正确,因为在运行扩展上下文时,您引用的记录单中的响应在所有情况下都不起作用。有关正确的方法,请参见我的答案。[披露:我是一名Crossride员工]