2015-12-15 3 views
2

Я только начал учиться коду на прошлой неделе, так что несите меня. Я хочу сделать расширение, которое делает следующее.Как скопировать/вставить расширения Chrome

1) При нажатии правой кнопки мыши на текстовом поле пользовательского контекстное меню открывается

2) Когда пункт контекстного меню нажат, название этого пункта контекстного меню будет вставлено в текстовом поле.

До сих пор я создал все контекстные меню. Я просто не могу понять, как скопировать/вставить заголовок контекстного меню в текстовое поле. Я читал о команде documents.exec, но я понятия не имею, как его использовать. Благодарю.

}); 

chrome.contextMenus.create({ 

title:"hi", 
onclick:copy, 
contexts:["editable"] 

}); 

chrome.contextMenus.create({ 

title:"bye", 
onclick:copy, 
contexts:["editable"] 

}); 

function copy(info) { 

}; 
+0

Где находится этот код? – Xan

+0

Код находится в файле JavaScript background.js в корневой папке расширения. Это единственный код в файле. Я не уверен, ответил ли я на ваш вопрос. – pilky04

+0

[Этот вопрос] (http://stackoverflow.com/questions/28055887/is-there-a-flexible-way-to-modify-the-contents-of-an-editable-element/28198957#28198957) может быть стоимости. Я не дублирую дубликат, но это очень актуально. – Xan

ответ

0

Существует api под названием document.execCommand(), как вы упомянули. Его так же просто, как код ниже:

var copyText = document.execCommand('copy'); 

В основном он скопирует любой текст в браузере. Поэтому он не применим к тому, чего вы хотели достичь.

И наконец, чтобы изменить значение любого элемента веб-страницы, вы должны обладать достаточными знаниями о content scripts. В основном это файлы JavaScript, которые запускаются в контексте веб-страниц. Используя стандартную Document Object Model (DOM).

Смежные вопросы