當(dāng)訪客復(fù)制頁(yè)面內(nèi)容達(dá)到一定長(zhǎng)度時(shí)溺蕉,可使用此方法加上簡(jiǎn)單的版權(quán)說(shuō)明蔑滓。
例如:
在網(wǎng)站復(fù)制長(zhǎng)度大于42的文本時(shí)自動(dòng)加上這樣的版權(quán)聲明:
實(shí)現(xiàn)原理:
監(jiān)聽(tīng)copy事件
使用 window.getSelection() 獲取選中的文本
使用 clipboardData.setData 操作剪貼板的內(nèi)容
代碼實(shí)現(xiàn):
? ? document.body.addEventListener('copy', function (e) {
? ? ? ? if (window.getSelection().toString()) {
? ? ? ? ? ? setClipboardText(e);
//? ? ? ? ? ? alert('商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)传于,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處,謝謝合作。');
? ? ? ? }
? ? });
? ? function setClipboardText(event) {
? ? ? ? var clipboardData = event.clipboardData || window.clipboardData;
? ? ? ? if (clipboardData) {
? ? ? ? ? ? event.preventDefault();
? ? ? ? ? ? var htmlData = ''
? ? ? ? ? ? ? ? + '著作權(quán)歸作者所有惊科。<br>'
? ? ? ? ? ? ? ? + '商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)棚饵,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處煤裙。<br>'
? ? ? ? ? ? ? ? + '作者:作者名<br>'
? ? ? ? ? ? ? ? + '鏈接:' + window.location.href + '<br>'
? ? ? ? ? ? ? ? + '來(lái)源:指定網(wǎng)址等<br><br>'
? ? ? ? ? ? ? ? + window.getSelection().toString();
? ? ? ? ? ? var textData = ''
? ? ? ? ? ? ? ? + '著作權(quán)歸作者所有。\n'
? ? ? ? ? ? ? ? + '商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán)噪漾,非商業(yè)轉(zhuǎn)載請(qǐng)注明出處硼砰。\n'
? ? ? ? ? ? ? ? + '作者:作者名\n'
? ? ? ? ? ? ? ? + '鏈接:' + window.location.href + '\n'
? ? ? ? ? ? ? ? + '來(lái)源:指定網(wǎng)址等\n\n'
? ? ? ? ? ? ? ? + window.getSelection().toString();
? ? ? ? ? ? clipboardData.setData('text/html', htmlData);
? ? ? ? ? ? clipboardData.setData('text/plain',textData);
? ? ? ? }
? ? }
已知問(wèn)題
iOS Safari 不兼容 clipboardData.setData() 方法,所以在 iOS Safari 上無(wú)效
補(bǔ)充說(shuō)明:原帖地址 https://www.anotherhome.net/