Страницы: 1
Нашел в чем причина.
Надо было открывать страничку из расширения. И в контексте открытой вкладки все работает и видит переменные.
var tab = window.opener.gBrowser.addTab('http://localhost/index.html'); window.opener.gBrowser.selectedTab = tab; var browser = window.opener.gBrowser.getBrowserForTab(tab); browser.addEventListener("something-query1", function(event){chek(event.target.nodeValue);}, false, true);
Докопался.
Вот может кому пригодится.
Components.utils.import("resource://view/sqlite.js"); var mDbConn = new SQLiteHandler(); // Подключение базы // Создать базу и ее просматривать возможно с помощью SQLite Manager var localFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); var pathfile = 'C:\\view.sqlite'; localFile.initWithPath(pathfile); mDbConn.openDatabase(localFile, 0); // Отправляем запрос к базе var sql = "insert into 'eventid' ('time') values ('2013')"; mDbConn.selectQuery(sql);
в SQLite Manager можно составлять и проверять запросы.
Есть еще один нюанс, быстродействие SQLite по умолчанию на одну транзакцию вставки insert где-то 40-100 мс. Это при условии сохранении целостности базы.
Если работать в режиме PRAGMA synchronous=OFF то быстродействие 0-1 мс. Но без гарантии сохранения данных если будет сбой.
Включается так
sqlite.js взят из SQLite M
…Здравствуйте.
Не могу понять в чем проблема.
Сделал страничку которая посылает сообщение в расширение, с таким кодом:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" charset="utf-8"> function send_request() { var data = {"type":"outcome.update_list"} var request = document.createTextNode(JSON.stringify(data)); document.head.appendChild(request); var event = document.createEvent("HTMLEvents"); event.initEvent("something-query1", true, false); request.dispatchEvent(event); } </script> <body> <p><button onclick="send_request();"> Послать </button></p> </body> </html>
В расширении повесил обработчик который ловит и принимает содержимое data:
[code]
var conn
Спасибо. Над этим я уже работаю, думал может кто то уже докопался до этого.
Я для этого применил аддон ExecuteJS https://addons.mozilla.org/ru/firefox/addon/execute-js/.
Позволяет в открытой вкладке выполнять JS код и получать результат.
Он использует Sandbox. Довольно интересно.
Добрый вечер.
Подскажите господа, пишу аддон к лисе который с открытого окна с помощью JQuery собирает со страницы некоторые данные, эти данные на странице периодически обновляются и необходимо эти значения атрибутов сохранять, возможно ли сохранять эти данные, кроме стандартных массивов javascipt, в базу данных например в Sqlite который использует Firefox. С помощью Sqlite Manager довольно удобно было бы работать с базой в данном случае. Меня интересует как из расширения приконектится к базе? Или кто как использует хранение данных в приложении?
Страницы: 1