私は、バックグラウンドスクリプトでこれをやっている:バックグラウンドスクリプトで要素を作成する方法は?
var link = document.createElement('div');
するとリンクはnullです。エクステンションのバックグラウンドページにDOMがないか、それともアクセスできないのでしょうか? とにかく私はクリップボードにコピーを作るためにこれが必要です。ここで私は部分は、それを使用しよう:
function selectionOnClick(info, tab) {
var link = document.createElement('div');
var range = document.createRange();
link.innerHTML = ShortURL(info.selectionText);
range.selectNode(link);
window.getSelection().addRange(range);
try {
var successful = document.execCommand('copy');
if (!successful) {
alert("Your browser doesn't support copy to clipboard.");
}
} catch(err) {
alert("Your browser doesn't support copy to clipboard.");
}
window.getSelection().removeAllRanges();
link.parentNode.removeChild(link);
}
chrome.contextMenus.create({'title': 'Short selected', 'contexts':['selection'], 'onclick':selectionOnClick});