煎蛋网页面内容无法复制粘贴的奥秘

   document.addEventListener('copy', function() {
var selection = window.getSelection(),
pagelink = '煎蛋网 版权所有: ' + document.location.href,
copytext = selection + pagelink,
newdiv = document.createElement('div');
newdiv.style.position = 'absolute';
newdiv.style.left = '-99999px';
document.body.appendChild(newdiv);
newdiv.innerHTML = pagelink;
selection.selectAllChildren(newdiv);
window.setTimeout(function () {
document.body.removeChild(newdiv);
}, 100); 

以前的设置CSS user-select的方法看来是弃用了。=return false;方法也没有用轻易绕过(可以按住左键再按Ctrl+C),问题是这个新式的注册copy事件的方法还真的绕不过去。最新版本的chrome和firefox都支持这个事件。见鬼了。

要绕过这种变态的用法,我想到了几种:
1, 不能在页面上拖动鼠标直接复制,但是还是可以F12打开开发者工具,然后复制html代码的,就是麻烦了一点;
2,可以使用老版本的不支持copy事件的浏览器
3,可以修改浏览器的内核源代码,把IDL中copy事件的定义删除掉。

你可能感兴趣的:(JavaScript,html,Web,浏览器,黑客技)