通过execCommand命令实现一键复制文本的javascript代码

网页上实现一键复制的功能可以使用clipboardjs插件,也可以使用execCommand命令,但兼容性没有前者好。实现思路是创建一个表单文本输入框元素如input、textarea,然后使用select()方法选择文本,再使用execCommand命令复制文本到剪切板。

为了便于重复调用,写成一个函数

function tddx_copyText(ctext) {
    var copyText = document.createElement('textarea'); //或者是input
    copyText.value = ctext; //把要复制的文本附值
    document.body.appendChild(copyText); //把创建的textarea元素追加到body标签末尾
    copyText.select(); //选择文本
    var status = document.execCommand('copy'); //复制文本 
    var tips = status ? '该型号已复制到剪切板!' : '复制失败,请重试!'; //判断复制结尾输入对应的提示
    alert(tips);
}

调用函数

tddx_copyText('这是要复制的内容');

比较简单。