现如今,如果你要直接复制简书、掘金、CSDN 等网站上文章的内容,当你粘贴的时候就会发现,复制的文字中多了几行版权信息。
通常是这样的内容:
作者:【作者名】 链接:【当前网页链接】 来源:【站点名】 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处
实现方式如下:
// 确定好会添加版权信息的复制范围,在类名为 post-body 的 dom 元素内 var copyPreventContent = document.querySelector('.post-body') copyPreventContent.addEventListener('copy', function(e) { // window.getSelection()返回一个 Selection 对象,此对象表示用户选择的文本范围或插入符号的当前位置 // 调用 Selection 对象的 toString() 函数,会返回被选中区域中的纯文本 var finalCopyContents = window.getSelection().toString() if(finalCopyContents) { var finalCopyContents = finalCopyContents + "\\n\\n作者:【 作者名 】" + "\\n链接:【 当前页面链接 】" + "\\n来源:【 当前站点名字 】" + "\\n著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处" // 调用 setData() 方法,复制 clipboardData 的内容到到剪切板 e.clipboardData.setData('text/plain', finalCopyContents) e.clipboardData.setData('text/html', `<b>${finalCopyContents}</b>`) e.preventDefault() } })
参考资料:
- Author:游方
- URL:https://blog.ykxkykx.cn/article/8181269a
- Copyright:All articles in this blog, except for special statements, adopt BY-NC-SA agreement. Please indicate the source!