JS实现复制内容到剪贴板的方法

70 阅读1分钟

复制方法

/**
 * 复制功能
 * text 传入要复制的文本
*/
function copy(text) {
    // 实现复制方法一:
    if (navigator.clipboard) {
        navigator.clipboard.writeText(text);
        return true;
    }

    // 实现复制方法二:
    var copyInput = document.getElementById('copyInput');
    if (!copyInput) {
        var copyInput = document.createElement('input');
        copyInput.setAttribute('id', 'copyInput');
        copyInput.style.position = 'fixed';
        copyInput.style.left = '-100%';
        copyInput.style.top = '0';
        copyInput.style.zIndex = -100;
        copyInput.style.opacity = 0;
        document.body.appendChild(copyInput);
    }
    copyInput.value = text;  
    copyInput.focus();
    copyInput.select();

    // document.execCommand 可能会被废弃
    if (document.execCommand('copy')) {
        document.execCommand('copy');
    }
    copyInput.blur();
    
    return true; 
}

调用方法

copy('传入你要复制的文本');

相关文章

navigator.clipboard

document.execCommand