用jQuery 屏蔽鼠标右键、复制粘贴和F键

如果你是小说原创博客站长、原创写作站长、日记类型网站以及其他内容偏私人的站长,是不是总被一些无良的网站小贼偷偷采集你的网站内容,然后某一天百度上突然看到你的文章内容居然被一个站点copy了去,甚至还百度排名在你的原创文章的前面!这个时候是不是感觉特别气愤?

说说背景:遭遇采集

碎碎念就遇到过一次,《用CSS3打造轻量级的动画效果》 这篇文章在发布大概一天后,在百度上惊讶地发现文章内容的前一大截都被copy到某个站点上去,甚至没有注明转载的链接,不过文章风格和小编的自称依然是我碎碎念,这是真真切切的证据,这个站点居然采集我的文章,而且没有留言告知,你好歹留个言说转载了,我会不同意么?你的站被收录了,而我自己的原创文章却因此迟迟没有被百度收录,你说气不气人!

至今,文章排名在我之前,辛辛苦苦编辑的内容却为他人作嫁衣裳!

屏蔽代码

有没有办法抵挡这种恶心的做法呢?

从站点复制的内容可以看到,应该是直接通过复制采集而去的。所以我们的思路就是,用JS识别按键,然后将返回的键值修改成空(false)。

网络上有很多javascript的代码可以实现,这里就不贴出来啦。功能是一样的,不过就是需要贴在底部直接引用,碎碎念是比较折腾,有现成的代码直接用不就得了?

不行,我想整合到js文件里去,好吧。。。
参考来源:
IE屏蔽鼠标右键、禁止复制粘贴等功能-wiliz blog
jquery禁用右键、文本选择功能、复制按键的实现-Gichan

通过对照着写函数,然后去查询要屏蔽的按键的keycode ,相应地添加进去,然后修改个别不符合jQuery写法的地方,修修补补,然后就出来了下面的代码啦:

屏蔽鼠标右键、复制粘贴和F键view raw
/* * @Author: nooldey * @Date: 2018-01-11 13:27:47 * @Last Modified by: zws * @Last Modified time: 2021-05-07 15:26:00 * @Description: 屏蔽鼠标右键、复制、粘贴、CTRL、ALT、SHIFT、F2~F12等,仅建议对文章内容独特性要求或不愿意被随意复制内容的站点 */ /* ---------jQuery-------- */ //屏蔽鼠标右键、ALT翻页、CTRL+N、CTRL+R、F2~F12、SHIFT+左键 jQuery(document).ready(function ($) { $(document).bind("contextmenu", function () { return false; }); $(document).bind("selectstart", function () { return false; }); $(document).keydown(function () { return key(arguments[0]) }); function key(e) { var keyCode; if (window.event) //IE { keyCode = e.keyCode; } else if (e.which) //firefox/opera/chrome/netscape { keyCode = e.which; } if ( (keyCode == 112) || //F2 (keyCode == 113) || //F2 (keyCode == 114) || //F3 (keyCode == 115) || //F4 // (keyCode==116)|| //F5 (keyCode == 117) || //F6 (keyCode == 118) || //F7 (keyCode == 119) || //F8 (keyCode == 120) || //F9 (keyCode == 121) || //F10 // (keyCode==122)|| //F11 (keyCode == 123) || //F12 (keyCode == 17) || //CTRL (keyCode == 16) //shift //此处填写后续条件 ) { alert("别再按了,你节操碎了!"); return false; } } }); /* -----------原生------------ */ /*禁止复制*/ function noCopy() { /* 禁止右键复制粘贴 */ document.oncontextmenu = function () { return false; } document.onselectstart = function () { return false; } function key(e) { var keyCode; if (window.event) { //IE keyCode = e.keyCode; } else if (e.which) { //firefox/opera/chrome/netscape keyCode = e.which; } /* 112 //F2 113 //F2 114 //F3 115 //F4 116 //F5 117 //F6 118 //F7 119 //F8 120 //F9 121 //F10 122 //F11 123 //F12 17 //CTRL 16 //shift */ //此处填写后续条件 if ([112, 113, 114, 115, 117, 118, 119, 120, 121, 122, 123, 17, 16].indexOf(keyCode) > -1) { console.log("别再按了,你节操碎了!"); return false; } } document.onkeydown = function () { return key(arguments[0]) } }

当然,要做到完全防止采集,目前是没有这个办法的,因为网站的展现,终归还是会公开一些东西的,只是,我们增加采集者的工作强度,一次两次后,他们就不会再来随意采集了。

声明:

采集虽然不一定违法,但必定是不道德的。
本站对采集行为表示中立,但严重鄙视恶意采集(包括不注明来源、移花接木将自己打造成原创作者等)!

碎碎念试用了两天这段代码,没有出现其他影响,不过,为了方便大家可以复制上面的这些代码,还是忍一忍,把这段屏蔽代码给注释掉了。再发现采集的站点,我会帮他举报一下自己的!

NOOLDEY

本文作者:NOOLDEY

做一个诗情画意的码农,皮皮猪,我们走!

原文链接: http://zhuweisheng.com.cn/html/fuckcopy/

本站文章如无特殊声明均为原创,创作不易,转载请注明来源,谢谢!