Я создал расширение chrome, которое будет опираться на вызовы ajax из фонового скрипта, но по какой-то причине функция ajax не регистрируется как функция во время выполнения моего вызова. Сначала я подумал, что это проблема моего манифеста, но понял, что будет выдано сообщение о том, что $
не определено, если jquery не вводится для использования. Мне интересно, если это может быть какой-то выпуск ценных бумаг? Я бы подумал, что если бы это было так, функция все равно выполнялась бы, но выдавала ошибку, когда произошел транспорт, чтобы сказать недопустимый URL. Я действительно в растерянности здесь.
Перед попыткой $.ajax()
я использовал $.getScript()
, но выдает ту же ошибку, что getScript не является функцией.
В моем manifest.json у меня есть это:
"background": {
"scripts": ["vendor/jquery.js", "background.js"]
},
И это в моем background.js:
chrome.runtime.onInstalled.addListener(function(){
...
var Core = {
...
load: function(name){
var src = EXTERNAL+name+".js";
$.ajax({
url: src,
type: "script",
success: function(result) {
console.log(result);
}
});
},
};
function initialize(){
...
Core.load(name);
}
chrome.runtime.onMessage.addListener(function(message, sender, sendResponse){
var request = message.data;
var type = request.type;
switch(type){
case 'popup_handshake':
sendResponse({data:{domain: domain, seed: seed}});
break;
case 'seed':
domain = request.domain;
uW = request.uW;
seed = uW.seed;
cm = uW.cm;
delete uW.seed;
delete uW.cm;
initialize();
break;
}
});
});
В чем может быть проблема?