В исполняемый скрипт нельзя передать переменную . Это сделано, я думаю, по соображениям безопасности и производительности, потому что это может привести к утечкам памяти.
Что вы можете сделать, это передать значение переменной.
Есть два способа:
- Отправить сообщение для вашего сценария, см the messaging for communication between extension and pages
- Вводят значение переменной в сценарии страницы, используя тот же
executeScript
но прохождение сценария как строка вместо файла имя. Вы можете делать executeScript
звонки: один для инъекций значений и другой для инъекций файлов.
Не уверен, что я заработал. Я пытаюсь следовать за №1. 'chrome.runtime.onMessage.addListener (функция (сообщение) { if (message.type ==" pickLine ") { pickLineText = message.content; } });' находится в моем sendMessage.js и не имеет значения что, pickLine кажется всегда пустым – Dgameman1
@ ILovephp123 это асинхронное сообщение, возможно, вы отправляете его до того, как слушатель зарегистрирован на странице? Также вам нужно добавить все необходимые разрешения, в прошлый раз, когда я попытался сделать подобное, я потратил довольно много времени, чтобы заставить его работать, не так очевидно, как они это делают в хроме ... – smnbbrv
Проходит ли sendMessage выше или ниже оболочка выполнения? – Dgameman1