Я пытаюсь создать простое расширение для Chrome, которое добавляет элемент <input>
на активную вкладку при выборе опции («Добавить поле ввода») из контекстного меню (контекстное меню).
Вот файл background.js.
//background.js
function createNewInput(info, tab){
let input=document.createElement("input");
input.style.position="fixed";
input.style.left=0;
input.style.top=0;
input.style.width="100px";
input.style.height="100px";
input.style.background="green";
chrome.tabs.executeScript({
code: "document.body.appendChild(" + input + ");"
});
}
chrome.contextMenus.create({
"onclick": createNewInput,
"title": "Add an input box"
});
А вот файл manifest.json
//manifest.json
{
"manifest_version" : 2,
"name": "Test",
"version": "0.1",
"background": {
"scripts": ["background.js"]
},
"permissions": [
"contextMenus",
"activeTab"
]
}
Я получаю Uncaught SyntaxError: Неожиданный идентификатор ошибка в окне консоли (на странице, где я пытаюсь создать), когда я пытаюсь создать новый вход из опции контекстного меню.
Вещи, которые я уже пробовал
Добавление <input>
вручную с использованием того же кода в окне консоли инструментов разработчика.(Работает)
![result](https://i.stack.imgur.com/MqTXj.png)
Проверка на наличие невидимых символов (пробелы нулевой ширины, такие как Unicode U + 200b).Их нет.
Проверка на наличие ворса.Кажется, ничего нет.