如果只是单纯的获取页面上复制的内容可以使用window.getSelection()来获取选中的内容,在执行复制操作就可以了,但是如果想修改复制的内容可以先获取要复制的内容修改之后再用document.execCommand("copy") 事件(document.execCommand方法允许运行命令来操纵可编辑区域的元素)。
获取复制的内容
配合copy事件来获取
获取的content
是一个 Selection
对象。 如果想要将 selection
转换为字符串,可通过连接一个空字符串("")或使用 String.toString()
方法。
document.addEventListener(\'copy\', function() { var content = window.getSelection().toString(); console.log(content ) })
配合键盘事件来获取
document.addEventListener(\'keyup\', function(e) { if(e.ctrlKey && e.keyCode == "67") { var content = window.getSelection().toString(); alert(content) } })
获取复制的内容并修改
<textarea cols="20" rows="10" id="text">text</textarea> <input type="button" value="点击复制" class="btn"/> <script> var btn=document.querySelector(".btn"); btn.onclick=function(){ var text=document.getElementById("text"); text.value+=\'我是已经复制的文本\';//给复制的内容添加一段文字 text.select(); //选中复制的内容 document.execCommand("copy");//执行浏览器复制命令 alert("已复制好,可贴粘。"); } </script>