js 網頁複製時 添加版權

先貼上自己的代碼

```

const addCopyright = () => {
const genCopy = () => {
return [
  '',
  '',
  '作者:shanesco是一個大帥比',
  '鏈接:https://blog.csdn.net/qq_21436667',
  '來源:shanes的博客',
  '著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處。',
]
}


  $('body').on('copy', function (event) {
    if (!window.getSelection) {//判斷是否有複製的內容
        return
      }


      var selectionObj = window.getSelection();//獲取複製的對象
      var author = $(this).data('author') || 'shanesco'
      var link = $(this).data('link') || location.href


      if (selectionObj.toString().length < 128) { //判斷是否超過128個長度
        return
      }


      if (selectionObj.rangeCount) {
        var container = document.createElement("div"); //創建一個div
        for (var i = 0, len = selectionObj.rangeCount; i < len; ++i) {
          container.appendChild(selectionObj.getRangeAt(i).cloneContents());//插入複製的內容
        }
      }


      if ('object' === typeof event.originalEvent.clipboardData) {//調用clipboard api進行判斷
        event.originalEvent.clipboardData.setData('text/html',  container.innerHTML + genCopy(author, link).join('<br>'))
        container.remove();
        event.originalEvent.clipboardData.setData('text/plain', selectionObj.toString() + genCopy(author, link).join('\n'))
        event.preventDefault();//取消事件的默認動作
        return
      }


      $('body').append('<div id="symFixCopy" style="position: fixed; left: -9999px;">' +
        selectionObj.toString() + genCopy(author, link).join('<br>') + '</div>')
      window.getSelection().selectAllChildren($('#symFixCopy')[0])
      setTimeout(function () {
        $('#symFixCopy').remove()
      }, 200)
  })
}
addCopyright() //運行函數

```

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章