JS实现页面复制文字时自动加版权
# 简介
版权声明是指作品权利人对自己创作作品的权利的一种口头或书面声明,一般版权声明应该包括权利归属、作品使用准许方式、责任追究等方面的内容。
# 1.使用js执行复制操作自动添加版权信息
# 1.1.参考案例
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/yanglr2010/article/details/88197591
。
# 2.js 实现代码,可以根据个人需求进行修改。下面贴出本站使用的js代码。
<script type="text/javascript">
var ua = navigator.userAgent.toLowerCase();
var copy_url = "{{$article_url}}";
var author = "{{$configs['user_info.full_name']}}";
var site_name = "{{$configs['base.website_title']}}";
if (window.ActiveXObject) { /* 兼容IE */
document.body.oncopy = function () {
event.returnValue = false;
var selectedText = document.selection.createRange().text;
var pageInfo = '<br>---------------------<br>著作权归作者所有。<br>'
+ '商业转载请联系作者获得授权,非商业转载请注明出处。<br>'
+ '作者:'+ author +'<br> 源地址:' + copy_url
+ '<br>来源:'+site_name+'<br>© 本文为' + site_name + '「'+ author + '」的原创文章,遵循 CC BY-NC-SA 版权协议,转载请附上原文出处链接及本声明。';
clipboardData.setData('Text', selectedText.replace(/\n/g, '<br>') + pageInfo);
}
}
else {
function addCopyRight() {
var body_element = document.getElementsByTagName('body')[0];
var selection = window.getSelection();
var pageInfo = '<br>---------------------<br>著作权归作者所有。<br>'
+ '商业转载请联系作者获得授权,非商业转载请注明出处。<br>'
+ '作者:'+ author +'<br> 源地址:' + copy_url
+ '<br>来源:'+site_name+'<br>© 本文为' + site_name + '「'+ author + '」的原创文章,遵循 CC BY-NC-SA 版权协议,转载请附上原文出处链接及本声明。';
var copyText = selection.toString().replace(/\n/g, '<br>') + pageInfo; // Solve the line breaks conversion issue
var newDiv = document.createElement('div');
newDiv.style.position = 'absolute';
newDiv.style.left = '-99999px';
body_element.appendChild(newDiv);
newDiv.innerHTML = copyText;
selection.selectAllChildren(newDiv);
window.setTimeout(function () {
body_element.removeChild(newDiv);
}, 0);
}
document.oncopy = addCopyRight;
}
</script>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
上次更新: 2023/09/19, 09:25:06