虽然本站的访问量几乎为零,而且我更新不多,主要是貌似没有什么好发的,再加上确实有点懒,博客更新内容不定且随缘,有时候看到什么觉得好的就收集整理一下,权当给自己做个记录了。
这次看到的是复制文章自带版权信息,感觉还是有点意思的,类似于CSDN那种复制后会在内容后面加一串文字,Typecho也是完全能够做到的。
目的: 访客有意复制文章内容时自动在剪贴板增加版权信息
实现方法: 添加JavaScript代码
功能代码
<script>
document.body.addEventListener('copy', function (e) {
if (window.getSelection().toString() && window.getSelection().toString().length > 42) {
setClipboardText(e);
// alert('商业转载请联系作者获得授权,非商业转载请注明出处哦~\n谢谢合作~(。・`ω´・)');
}
});
function setClipboardText(event) {
var clipboardData = event.clipboardData || window.clipboardData;
if (clipboardData) {
event.preventDefault();
var htmlData = ''
+ '著作权归作者所有。<br>'
+ '商业转载请联系作者获得授权,非商业转载请注明出处。<br>'
+ '作者:<?php $this->author() ?><br>'
+ '链接:' + window.location.href + '<br>'
+ '来源:<?php $this->options->siteUrl(); ?><br><br>'
+ window.getSelection().toString();
var textData = ''
+ '著作权归作者所有。\n'
+ '商业转载请联系作者获得授权,非商业转载请注明出处。\n'
+ '作者:<?php $this->author() ?>\n'
+ '链接:' + window.location.href + '\n'
+ '来源:<?php $this->options->siteUrl(); ?>\n\n'
+ window.getSelection().toString();
clipboardData.setData('text/html', htmlData);
clipboardData.setData('text/plain',textData);
}
}
</script>
使用方法
可以直接放在主题文件夹下的footer.php
最后的一堆script
之间,如果考虑到用户体验的话建议只放在post.php
文件中。
注:post.php
文件为文章内页php文件。
附加说明:该代码有一个弹窗功能,可能会比较影响用户体验,所以马赛克掉了,如果想使用的话直接把注释去掉即可。
评论