Я создаю расширение Firefox для добавления некоторых функций к определенным веб-страницам. Мне нужно проверить, существуют ли некоторые элементы, и выделить их, поэтому я использую xpath, чтобы проверить и найти их. Я знаю об управлении вкладками и контентом через вкладки и порты, но мне действительно нужно использовать низкоуровневый API и делать это без портов. Дело в том, что я не знаю, как получить текущее открытое окно вкладки (я также могу открыть вкладку, но не получаю окно). Я уже пытался открыть вкладку и:
tabs.open({
url: url,
onOpen: function onOpen(tab) {
// get the XUL tab that corresponds to this high-level tab
var lowLevelTab = viewFor(tab);
var browser = tab_utils.getBrowserForTab(lowLevelTab);
var doc = browser.contentDocument;
console.log(doc); //THIS IS AN EMPTY DOC
// get the most recent window. This give me a XUL window, and I can't sucessfully execute eval on that...
var win = utils.getMostRecentBrowserWindow();
}})
Я видел много методов для получения разных видов окон, но не нашел объяснения различий. Например. Окно Chroe, окно XUL, окно NSI, базовое окно... Мне просто нужно окно документа текущей веб-страницы.
Любые разъяснения приветствуются. Заранее спасибо,