我的Chrome扩展程序中有一个加载网站的iframe,我想将CSS和Javascript注入网站,但只有当它加载到我的扩展iframe中时(因此当用户浏览时不会受到影响)该网站通常)。
我很惊讶Chrome扩展程序在尝试访问iframe的内部时会应用跨域安全策略,即使他们可以进行跨域XHR请求。
有一种简单的方法吗?我虽然可以使用executeScript来完成它,但它需要一个标签ID。
答案 0 :(得分:2)
了解你是否在ifrmae的唯一方法是window
不是top
。
if (window == top) {
// Not in iframe
}
else {
// In an iframe
}
您只能对内容脚本执行此操作,而不能为样式表执行此操作。我通常做的是在内容脚本中,我检查它是否不在顶部窗口,然后继续脚本,否则我只是结束它。
<强>小结强>
if (window != top) { loadContentScript() }
希望有所帮助,我这样做是为了我的一些扩展。