Использование расширения Chrome для доступа к редактору-редактору

(Этот вопрос на самом деле вообще не связан с редактором. Его можно применить к чему угодно: JQuery, CodeMirror и т. д.)

Я хотел бы создать расширение Chrome для изменения текста внутри redactor-editor. Если я открою консоль, я могу ввести:

$("#editor").redactor("code.set", "<p>foo bar</p>")

и это даст мне то, что я хочу.

Теперь я пишу расширение, чтобы сделать это. Однако похоже, что редактору не удалось получить доступ из сценария содержимого. Это неудивительно, поскольку документировано, что расширения Chrome работают в изолированном мире (на самом деле, я думаю, что мой JQuery и JQuery сайта даже не будут одинаковыми). Однако я также знаю, что для этого есть хак; то есть добавить тег script, который запускает эту команду в DOM. Однако после этого я все еще получаю сообщение об ошибке.

Uncaught TypeError: $(...).redactor is not a function

У вас есть какие-либо идеи о том, как я могу получить доступ к редактору?


person Sorawee Porncharoenwase    schedule 29.08.2015    source источник
comment
Попробуйте добавить внедренный скрипт в web_accessible_resources в манифесте, см. этот ответ   -  person wOxxOm    schedule 29.08.2015
comment
Да, это работает! Большое спасибо!   -  person Sorawee Porncharoenwase    schedule 29.08.2015
comment
@wOxxOm Обратите внимание, что предоставленная вами ссылка не совсем верна. В файле манифеста должен быть указан введенный сценарий, а не сценарий содержимого. Во всяком случае, я получил это сейчас! :). Не стесняйтесь отвечать на него ниже, чтобы я мог отметить его как правильный ответ.   -  person Sorawee Porncharoenwase    schedule 29.08.2015
comment
Метод 1 в связанном дублирующем ответе содержит решение для этого случая.   -  person wOxxOm    schedule 29.08.2015