需求背景:
? ? ? ? 需要禁用部分文本內(nèi)容的復(fù)制事件,并且在復(fù)制事件發(fā)生時(shí),將復(fù)制的文本內(nèi)容通過接口傳給后端。
上代碼:
// 使用Dom獲取需要操作禁用時(shí)間的元素let element: any = document.getElementById('test1');// 為該元素添加 copy 事件監(jiān)聽器element.addEventListener('copy', function (event: any) {// 在這里編寫你想要執(zhí)行的操作console.log('復(fù)制事件被觸發(fā)');var selection: any = window.getSelection();var selectedText = selection.toString();console.log(selectedText, '打印查看復(fù)制的文本內(nèi)容')// 將selectedText調(diào)用接口傳給后端// 可以通過 event.clipboardData 對(duì)象來設(shè)置剪貼板的數(shù)據(jù)event.clipboardData.setData('text/plain', '自定義的復(fù)制文本(替換復(fù)制的文本內(nèi)容)');// 阻止默認(rèn)的復(fù)制行為event.preventDefault();});