【发布时间】:2016-11-08 13:35:42
【问题描述】:
以下是我在 extension.js 中的代码。如果您查看代码,我尝试了不同的方法将文件加载到我的扩展中。无论如何,我总是得到 p>
VM3051:15 Uncaught ReferenceError: PDFJS is not defined
尝试将文件放在不同的位置。
appAPI.ready(function($) {
console.log("pdf min js loading");
appAPI.resources.includeJS('jspdf.js');
// appAPI.resources.includeJS('js/jspdf.js');
// appAPI.resources.includeRemoteJS('//cdnjs.cloudflare.com/ajax/libs/jspdf/1.2.61/jspdf.min.js');
//$.globalEval(appAPI.resources.get('//cdnjs.cloudflare.com/ajax/libs/jspdf/1.2.61/jspdf.min.js'));
console.log("done");
setTimeout(function(){
alert(window.location.href);
if(window.location.href.indexOf(".pdf") > -1) {
console.log("its a pdf");
alert("pdf");
var doc = new jsPDF();
}else{
alert($.trim($('div').find('h1,h2,h3,h4,h5,p,span').text()));
}
},6000);
});
这是文件结构
我无法修改 manifest.json,因为扩展名对于所有浏览器都应该是唯一的,而不仅仅是 chrome。
【问题讨论】:
-
注意:
window.location.href.indexOf(".pdf") > -1不可靠。使用window.location.href.endsWith(".pdf")之类的东西。 -
@gcampbell 是的......当然。我会尽快更新它。现在只是测试。
-
@sᴜʀᴇsʜᴀᴛᴛᴀ,我猜你的意思是
jspdf.min.js,你能不能也提供manifest.json? -
@HibaraAi 是的。刚刚添加了我的清单。并且还尝试将它放在扩展的 lib 文件夹中并在清单中给出路径。还是一样的错误。
-
文件结构截图几乎没有用,因为它不完整并且包含额外的路径,如
Resources,在发布的代码中没有使用。Settings.json中还有一个大写字母,因此请确保文件名完全相同或只是始终使用小写。
标签: javascript jquery google-chrome-extension browser-extension crossrider