document.execCommand("粘贴")不起作用! "复印"和" cut"工作正常。
var editor = document.getElementById("ta1");
editor.focus();
editor.select();
var successful = document.execCommand("Paste");
var msg = successful ? 'successful' : 'unsuccessful';
alert('Pasting text command was ' + msg);
此警报"不成功"在粘贴,但"成功"在复制和剪切..
我使用" copy"在我的网页上的另一个地方,整个事情就像一个魅力,但我需要得到"粘贴"工作也很好..
我使用Chrome(没有扩展程序,只是常规网页)。
有什么想法吗?
答案 0 :(得分:4)
出于安全原因,它在Chrome中被阻止。 甚至办公室365都要求他们的用户使用shorcuts ctrl + v而不是复制。
此功能现在仅适用于Chrome扩展程序。
编辑:
如果要复制的文本必须粘贴在同一页面中,然后只将文本存储在变量中,则可以使用以下命令粘贴
document.execCommand('insertText'
但你需要首先关注textarea
并复制选择https://developer.mozilla.org/fr/docs/Web/API/Window/getSelection
答案 1 :(得分:2)
Mozilla Documentation of Document.execCommand()中明确提到了这一点 的是:
<强>糊强>
在插入点处粘贴剪贴板内容(替换当前选择)。必须在user.js首选项文件中启用剪贴板功能。请参阅1。
1在Firefox 41之前,需要在user.js首选项文件中启用剪贴板功能。有关详细信息,请参阅Mozilla首选项简要指南。如果不支持或启用该命令,execCommand会引发异常而不是返回false。在Firefox 41及更高版本中,默认情况下,在任何能够弹出窗口的事件处理程序中都启用了剪贴板功能(半受信任的脚本) )。
答案 2 :(得分:0)
我遇到了同样的问题。因此,当我使用下面的代码进行变通时,它的工作受到一些限制。试试看:)
navigator.clipboard.readText().then(function(text){
document.execCommand( "insertHTML", false, text || "");
});