复制文章自带版权信息

代码184 字

给Typecho博客添加JavaScript代码实现复制带版权信息的功能,当访客有意复制文章内容,会在剪切板上增加知乎体一般的版权信息

代码如下

 <script>
  document.body.addEventListener('copy', function (e) {
      if (window.getSelection().toString() && window.getSelection().toString().length > 10) {
    setClipboardText(e);
      }
  }); 
  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文件即文章内页php文件


歲月安然
一个持续更新的个人博客,记录生活、工作、爱好的点点滴滴。