Как кодировать расширение Firefox, которые работают, код JavaScript в контексте страницы как поджигатель делает

Я знаю, что из соображений безопасности, что этого не легко достигнуть, однако был бы способ сделать так, как поджигатель делает...

Помогите, хотел бы вызвать некоторый сценарий в контексте страницы для достижения некоторого эффекта...

В основном я хотел бы достигнуть двух функциональностей: 1. добавьте jQuery к любой веб-странице автоматически, если не уже существуют. 2. когда открытый определенный адрес, звоните, метод той страницы к автоматическому уведомляют сервер. (ajax функциональность страницы)

Я попытался ввести на теле, никакой удаче. попробованный для получения объекта окна, которые однако не имеют доступа для вызывания функции.

Попытается изменить местоположение к чему-то как: javascript:alert ('тест вводят');

Большое спасибо.

5
задан Neil Knight 8 June 2010 в 08:06
поделиться

2 ответа

Хорошо, прочитав некоторую официальную документацию и исходники GreaseMonkey, я получил следующий метод, который в основном работает для меня.

Надеюсь, это сэкономит час sb:

var appcontent = document.getElementById("appcontent");   // browser  
    if (appcontent) {
         appcontent.addEventListener("DOMContentLoaded", function (evnt) {
            var doc = evnt.originalTarget; 
            var win = doc.defaultView;
            var unsafeWin = win.wrappedJSObject;

            // vote.up is the function on the page's context
            // which is take from this site as example
            unsafeWin.vote.up(...);
         }, true);
    }
}
2
ответ дан 15 December 2019 в 06:16
поделиться

Greasemonkey делает это. Если вы разрабатываете собственное расширение с подобной функциональностью, вы можете использовать Components.utils.evalInSandbox.

1
ответ дан 15 December 2019 в 06:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: