
[英]How to clear clipboard data in Google Chrome, Mozilla Firefox and Safari using JavaScript or jQuery
[英]Storing clipboard data into a variable with JavaScript and the Google Chrome API
我想知道是否可以将剪贴板的内容存储在字符串变量中。
以下消息来源指出,使用纯JS不可能做到这一点,但是我在
想,
希望chrome API能够实现这一目标。 (我正在开发chrome扩展程序)。
有一个clipboardRead
权限,这会让您相信这是可能的,但是它的描述只是:
如果扩展程序或应用程序使用document.execCommand('paste'),则为必需。 资源
需要说明的是:我不是要将数据复制到剪贴板或从剪贴板粘贴数据。 我想将剪贴板的内容存储到一个变量中, 而不会以任何方式更改剪贴板的内容。
为了进一步阐明,我不能假定剪贴板数据在info.selectionText
时恰好位于info.selectionText
中。
如果不可能的话,我想我将不得不忍受它,但是似乎可以通过扩展来解决。
编辑:我要存储值的原因是因为我需要利用剪贴板来执行操作,但是我想在完成操作后恢复其内容,因此用户不会丢失任何曾经存在的内容。
如果我只是将数据粘贴到文本区域中并从那里存储它,那么当我去放回数据时,用户将失去他们拥有的所有格式,这总比没有好得多,但不是最佳选择。
另外,是否有一种方法可以存储该数据,即使它不是字符串(例如图像)也是如此? 允许我执行此操作的解决方案无疑也将隐式地回答上述问题,但这不是必需的。 我主要是在寻找保存字符串数据,并希望保留格式的方法。
前段时间有一个实验性剪贴板api,我想他们虽然将其删除了。 您总是可以将内容粘贴到textarea / contenteditable中并获取其值:
function getClipboard() {
var el = document.createElement('textarea');
document.body.appendChild(el);
el.focus();
document.execCommand('paste');
var value = el.value;
document.body.removeChild(el)
return value;
}
console.log(getClipboard());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.