JavaScript实现复制功能
代码实现
html5的webAPI接口可以很轻松的使用短短的几行代码就实现复制功能,不需要依赖flash。
function copy() { const range = document.createRange(); range.selectNode(element); // 设定range包含的节点对象 // 窗口的selection对象,表示用户选择的文本 const selection = window.getSelection(); // 将已经包含的已选择的对象清除掉 if (selection.rangeCount > 0) { selection.removeAllRanges(); } // 将要复制的区域的range对象添加到selection对象中 selection.addRange(range); document.execCommand('copy'); }
当element为表单控件时,代码可以简化成:
function copy() { document.getElementById('textarea').select(); document.execCommand('copy'); }
代码演示
复制这句话,然后粘贴到文本框中。苟利国家生死以,岂因祸福避趋之。 --林则徐