如果只是單純的獲取頁面上復制的內容可以使用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>
