我正在进行扩展,并将修改有效标签的HTML&还会注入一些JS库,但在此之前,我想检查某个库是否已经存在于该选项卡中,如果已经存在,那么它可能会对我的注入JS库造成问题,例如;
chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
chrome.tabs.executeScript(null, {file: '/javascript/angular.min.js'});
});
在注入之前我想知道当前网站是否已经有这个库。
答案 0 :(得分:1)
您不需要这样做,网页中存在的原始js库不会影响您的扩展程序。
内容脚本在称为孤立世界的特殊环境中执行。他们可以访问注入页面的DOM,但不能访问页面创建的任何JavaScript变量或函数。它会查看每个内容脚本,就好像没有其他JavaScript执行正在运行的页面。反过来也是如此:页面上运行的JavaScript无法调用任何函数或访问内容脚本定义的任何变量。