Я строю это в бета-сборщике, и я действительно растерялся относительно того, как заставить ajax-вызов происходить внутри моего contentScriptFile. Я хочу получить ajax-запрос для динамического извлечения пакета данных в скрипт, чтобы я мог изменять содержимое страницы. Я искал и искал и, видимо, неправильные термины Помощь приветствуется! Спасибо
main.js
Код:
exports.main = function() {};
var data = require("self").data;
var pageMod = require("page-mod");
pageMod.PageMod({
include: "http://www.mozilla.org/*",
contentScriptWhen: 'ready',
contentScriptFile: [
data.url('jquery.1.7.1.js'),
data.url('common.js'),
data.url("mozilla.top.js")
]
})
mozilla.top.js
Код:
var qs = parseQS();
var foo= qs['string'];
var Request = require('request').Request;
Request({
url: "http://www.myremotepage.org?q="+foo,
onComplete: function (response) {
alert(response);
}
}).get();
alert('test');
старый код, чтобы пролить свет на конечную цель - http-запрос ничего не возвращает, даже если он работает в браузере. Предполагается, что это проблема с разрешениями сторонних инструментов ajax, и началось выше с использованием инструмента запроса дополнения.
Код:
/*
$.ajax({
url: 'http://www.myremotepage.org?q='+foo,
data: {q:strSearchQuery},
dataType: 'json',
success: function(data) {
var div = $("<div style='background-color: #ececec;'><h2 style='text-align: right; font-size: 11px; color: #666;'>Test</h2><ul id='ptcid'></ul></div>");
alert(data.length);
for(var i = 0; i < data.length; ++i)
{
alert('test');
div.find('ul').append('<li></li>');
div.find('ul li:last').append('<h3>' + data[i].header+ '</h3>');
div.find('ul li:last').append('<div>'+data[i].body+'</div>');
div.find('ul li:last').append('<div>' + data[i].footer + '</div>');
}
div.insertBefore('#header');
}
});
*/