在处理与非开发相关的事情时,我注意到在answers.com上感兴趣的事情。我复制并粘贴了答案中的一些文字,并注意到我的答案连同我得到了一些我没有复制的文字。在进一步研究之后,似乎如果您从网站的任何位置复制8个或更多单词,它会在粘贴时添加一些文本。例如,如果我转到page on the site并复制8个字或更多字,然后将其粘贴到某个地方,您将得到如下内容:
疯狂一遍又一遍地做着同样的事情,但期待着 不同的结果。
我的问题是,有谁知道这是怎么做的?!我看了一下代码,但没有找到任何给我任何线索:)谢谢!
P.S。是的,当我注意到这个页面时,我正在查看的那个页面:)
答案 0 :(得分:1)
function addText() {
var body_element = document.body;
var selection = window.getSelection();
var extraText = "<br /><br />some extra info here";
var copytext = selection + extraText;
var newdiv = document.createElement('div');
newdiv.setAttribute('style','position:absolute;left:-99999px;')
newdiv.innerHTML = copytext;
body_element.appendChild(newdiv);
selection.selectAllChildren(newdiv);
window.setTimeout(function() {
body_element.removeChild(newdiv);
},0);
}
document.oncopy = addText;