我使用paste execCommand来获取系统剪贴板数据。
document.execCommand("Paste", null, null);
var paste = pasteTarget.innerText;
我试图在每一秒延迟读取数据,但pasteTarget.innerText
始终返回null。
我正在执行来自本机客户端的句柄消息中的上述代码。看来这段代码没有在后台页面上执行。如何在后台页面中执行代码?
我正在使用pepper API示例(nacl_sdk \ pepper_35 \ examples \ api \ input_event)。
common.js
function getClipboard() {
var pasteTarget = document.createElement("div");
pasteTarget.contentEditable = true;
var actElem = document.activeElement.appendChild(pasteTarget).parentNode;
pasteTarget.focus();
document.execCommand("Paste", null, null);
var paste = pasteTarget.innerText;
console.log("paste = " + paste);
actElem.removeChild(pasteTarget);
return paste;
};
每当点击右键时,我都会尝试获取剪贴板数据。但是总是返回null
。
的manifest.json
{
"name": "Input Event",
"version": "35.0.1916.114",
"minimum_chrome_version": "35.0.1916.114",
"manifest_version": 2,
"description": "Input Event Example",
"offline_enabled": true,
"icons": {
"128": "icon128.png"
},
"app": {
"background": {
"scripts": ["background.js"]
}
},
"key": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCMN716Qyu0l2EHNFqIJVqVysFcTR6urqhaGGqW4UK7slBaURz9+Sb1b4Ot5P1uQNE5c+CTU5Vu61wpqmSqMMxqHLWdPPMh8uRlyctsb2cxWwG6XoGSvpX29NsQVUFXd4v2tkJm3G9t+V0X8TYskrvWQmnyOW8OEIDvrBhUEfFxWQIDAQAB",
"oauth2": {
"client_id": "903965034255.apps.googleusercontent.com",
"scopes": ["https://www.googleapis.com/auth/drive"]
},
"permissions": [
"clipboardWrite",
"clipboardRead"
]
}