setClipboardText = function(event) {
var htmlData, node, textData;
event.cancelable = true;
event.preventDefault(); //add this code will make iOS paste null
node = document.createElement('div');
node.appendChild(window.getSelection().getRangeAt(0).cloneContents());
htmlData = '<div>Some copyright' + node.innerHTML + '</div>';
textData = 'Some copyright' + window.getSelection().getRangeAt(0);
event.clipboardData.setData('text/html', htmlData);
event.clipboardData.setData('text/plain', textData);
};
copyrightRange = document.getElementById('content-copyright');
copyrightRange.addEventListener('copy', function(e) {
setClipboardText(e);
上面的代碼將在PC瀏覽器上工作,但在移動瀏覽器上,它不起作用。我測試的問題是event.preventDefault();
。但沒有這個,我的功能就沒有意義了。有人能幫我嗎?如何在用戶在移動瀏覽器中複製網頁內容時自動添加版權?
只是爲了記錄在案,我*絕對討厭*網站,惹你的剪貼板。 –
我也不喜歡它,但現在是我的工作,我必須這樣做。 – EricKK