我们如何检查这是否为内容脚本?
我们开发Firefox的扩展。 该脚本需要知道它是内容脚本还是后台脚本(有时相同的脚本可以是内容脚本和后台脚本)。 我们试着用下面的代码来做到这一点:
if (typeof exports === 'undefined') {
// we're in a content script.
} else {
// we're in a background script.
}
但问题在于某些内容脚本中的typeof exports
不是'undefined'
。 有没有更好的方法来知道我们在内容脚本中的时间?
编辑 :我有一个错误,实际上在内容脚本中typeof exports
是'undefined'
。 因此,检查typeof exports
可能是识别内容脚本的可靠方法。
我想到的第一件事 - 包括一些单独的文件作为内容脚本的扩展名,它将具有全局变量。 例如文件content_script_definition.js:
isContentScript = true;
然后使用下一个代码:
if (typeof isContentScript !== 'undefined' && isContentScript) {
// we're in a content script.
} else {
// we're in a background script.
}
也许有一些记录的功能,不知道这个...
其他方式
if(String(this).indexOf("Sandbox") >= 0){
//main.js
}
else{
//content script
}
链接地址: http://www.djcxy.com/p/45753.html