Я пытаюсь создать параметр контекстного меню, который копирует некоторый текст в системный буфер обмена.Скопируйте выделенный текст через опцию контекстного меню в расширение Chrome
В настоящее время я просто копирую строковый строковый литерал, но мне интересно, как его можно изменить, чтобы скопировать выделенный текст. В частности, я не знаю, как правильно создать объект createProperties
(см. Внизу)
Насколько я понимаю, это можно сделать только с помощью справочной страницы.
У меня есть следующие страницы фона:
background.html
<textarea id="temp"></textarea>
<script src="context.js"></script>
context.js
выглядит следующим образом:
chrome.contextMenus.create({
"title": "Freedom",
"contexts": ["editable"],
"onclick" : copyToClipboard
});
function copyToClipboard()
{
var tempNode = document.getElementById("temp");
tempNode.value = "some text";
tempNode.select();
var status = document.execCommand('copy',false,null);
if(status) alert('successful');
else alert('unsuccessful');
}
мой manifest.json
является следующим образом:
{
"manifest_version": 2,
"name": "Freedom",
"description": "Provides users useful and fun context menu options that they can access from anywhere.",
"version": "1.0",
"permissions": [
"contextMenus",
"clipboardWrite"
],
"background": {
"page": "background.html"
}
}
Я, видимо, объявляя функцию chrome.contextMenus.create() неправильно. Я прочитал документы для этого, и могу только представить, что я неправильно создаю объект createProperties
.
Я пытался имитировать эти источники:
Is that possible calling content script method by context menu item in Chrome extension?
http://paul.kinlan.me/chrome-extension-adding-context-menus/
некоторые другие связанные вопросы:
Copy to Clipboard in Chrome Extension
How to copy text to clipboard from a Google Chrome extension?
Вы вызова функции вместо того, чтобы передать ссылку на функцию. И внимательно прочитайте документацию обработчика события '' click' 'chrome.contextMenus.create' (https://developer.chrome.com/extensions/contextMenus#property-createProperties-onclick), ваша сигнатура функции полностью отключена , –
Можете ли вы представить пример, я читал и перечитывал эту страницу, но я смущен. Я вижу множество примеров, хотя делаю то, что я сделал. Они устарели? – LukeP
Вы имеете в виду, что я не создаю объект createProperties правильно? – LukeP