我尝试在execCommand()的帮助下使用jQuery创建一个RichText Editor。
但是以下代码:
document.execCommand('cut', false, null);
document.execCommand('copy', false, null);
document.execCommand('paste', false, null);
不适用于Mozilla Firefox,Google Chrome和其他一些浏览器。
是否有可能使用execCommand()执行剪切,复制和粘贴操作,或者还有其他方法可以在我的RichText编辑器中执行剪切,复制和粘贴操作?
答案 0 :(得分:2)
解决此问题很容易,请按照下列步骤操作: 转到" about:config"在Firefox上没有引用,然后点击了#34;我要小心,我保证"按钮,下一个类型" dom.event.clipboardevents.enabled"然后双击它,所以值为false。这应该可以解决问题。
答案 1 :(得分:1)
从Chrome 42和Firefox 41, document.execCommand('cut')和 document.execCommand('copy')将起作用,但仅适用于半受信任的事件。见https://www.w3.org/TR/2014/WD-clipboard-apis-20140313/#semi-trusted-events
就像这样:
document.getElementById('copy').onmousedown = function() {
console.log(document.execCommand('copy'))
}
document.getElementById('cut').onmousedown = function() {
console.log(document.execCommand('cut'))
}
<textarea></textarea>
<button id="copy">Copy</button>
<button id="cut">Cut</button>
在Chrome上 document.execCommand('paste')将以相同的方式工作,但需要安装扩展程序以允许它。没有扩展,它将无法工作。要允许,您需要在 manifest.json 文件的权限中包含此“clipboarRead”。像这样:
permissions: {
...
"clipboardRead"
...
}