document.execCommand(‘copy’)无效的原因

document.execCommand('copy') IOS返回false;

为了安全考虑,exeCommand()可以操作系统剪切板,可能被恶意利用。所以规定不能用JS“直接”调用execCommand(‘copy’),而需要放到某一个有用户出发的事件响应函数内。如:

$('#tzwxOk').click(function(){

document.execCommand('copy')

});

并且用户触发的事件和document.execCommand('copy')之间不能被异步过程隔开,

诸如 setTimeout promise async ajax axios 之类的都是不可以的。

posted @ 2022-08-16 16:41  风的方向·  阅读(5593)  评论(0编辑  收藏  举报