Сообщение расширения Chrome передается как объект
Я отправляю сообщение из скрипта контента на фоновую страницу. Сообщение является URL-адресом, который затем анализируется как ajax в фоновом режиме. Когда я console.log данные извлекаются вbackground.js
журнал консоли - чистый html, но когда я отправляю сообщение обратно в свой контент-скрипт, сообщение внезапно оказывается в объекте, и я не уверен почему.
Вот мой код:
Content_Script.js:
chrome.runtime.sendMessage({greeting: URL}, function(response) {
console.log(response.farewell); //logs an object: Object {farewell: Object}
$('#stats-table2').append(response.farewell); //doesn't output anything.
});
Background.js:
chrome.runtime.onMessage.addListener(
function(message, sender, sendResponse) {
getStats(message, sender, sendResponse);
return true;
});
function getStats(message, sender, sendResponse){
$.ajax({
url: message.greeting,
dataType: 'text',
success: function(data) {
var info = $("<div>").html(data)[0].getElementsByTagName("table")[1];
if(info != undefined) {
console.log(info); //logs pure HTML into the console..
sendResponse({farewell:info}); //sends message back.
}
}
});
}
Я добавил комментарии для важных частей .. Я не могу понять это, и это сводит меня с ума. Есть идеи? Спасибо!