PageGuard.js 防复制 + 检测开发者工具

2018-05-04 18:39:13 +08:00
 131

防复制就不多说了,整合了一下 JS 和 CSS 防复制的方法,应该还是比较全的

检测开发者工具的话,整合了各种较新的方法,经测试是支持 Chrome (包括单独窗口打开的情况)和 Firefox (在单独窗口打开时,只有打开控制台时才能检测到),其他浏览器还没有测试,不过估计 chromium 内核的浏览器也都是支持的

最后放个链接求 star: https://github.com/Netrvin/PageGuard.js

8697 次点击
所在节点    JavaScript
80 条回复
AX5N
2018-05-05 16:53:59 +08:00
@131 用防复制来防作弊,确实能算得上是一件有意义的事情。但不管怎么看,这个手段都是一个错误的方向,就像你下面所说的。

那么,除了防止作弊以外,还有什么其他用途吗。
131
2018-05-05 17:04:21 +08:00
@AX5N 看个人脑洞,而且既然已经有了用途,那么它的存在就已经有了意义
AX5N
2018-05-05 17:08:45 +08:00
@131 我想听下你的脑洞
est
2018-05-05 17:17:43 +08:00
66666
zeroDev
2018-05-05 17:43:32 +08:00
明白了,就是如何把人往死里整
2333
131
2018-05-05 18:18:33 +08:00
@Mysdes 这个插件我试了,只想到了几种治标的方法。。。

把它实现的代码贴一下: https://paste.ubuntu.com/p/DhhzkCy437/ ,大佬们看看能不能破,谢谢
codehz
2018-05-05 18:18:53 +08:00
@131 不是 innerText,是给盲人用的屏幕阅读器,不受 js 限制,只要是文本,都可以读,对付这种方法,只能靠图片了
zhjits
2018-05-05 23:45:23 +08:00
之前做过一个内部项目用 Screen Reader API 复制网页文本
在做之前还开过脑洞 hook GDI+/Direct2D API is 直接把程序画的字读出来
131
2018-05-06 00:07:57 +08:00
@zhjits 〈(゜。゜) 为什么,为什么?!明明我已经是一张画了,为什么你还要读我?!( x
yankebupt
2018-05-06 00:41:05 +08:00
然后哪天被哪个恶意的植入了挖矿脚本,防开发工具调试用的 js 就被当成病毒加的壳一起检测了,然后域名因为无法调试确认病毒责任直接入了云防毒黑名单,是不是就舒服了。
纯脚本防屏蔽感觉做差不多就得了,真想防复制感觉像各种在线文献阅读网站似的要个 flash 或什么插件权限,别管真防假防当时吓住一大票人。
openmynet
2018-05-06 01:13:35 +08:00
javascript:(function() {
let html = document.documentElement.cloneNode(true);
let jsNodes = html.querySelectorAll("script");
jsNodes.forEach(element => {
element.parentElement.removeChild(element);
});
let forceCopyWin = window.open("", "force");
forceCopyWin.document.documentElement.innerHTML = html.innerHTML;
})();
openmynet
2018-05-06 01:39:01 +08:00
优化下:
javascript: (function() {
let html = document.documentElement.cloneNode(true);
let jsNodes = html.querySelectorAll("script");
jsNodes.forEach(element => {
element.parentElement.removeChild(element);
});
let base = document.createElement("base");
base.href = window.location.origin + window.location.pathname;
html.querySelector("head").appendChild(base);
let forceCopyWin = window.open("", "forceCopy");
forceCopyWin.document.documentElement.innerHTML = html.innerHTML;
})();
131
2018-05-06 01:48:45 +08:00
@openmynet 厉害了,大佬;我会加一个判断丢失焦点(地址栏)的事件的(
openmynet
2018-05-06 01:54:55 +08:00
代码直接放在浏览器书签里直接点,地址栏不会出现焦点丢失。
131
2018-05-06 02:07:09 +08:00
@openmynet 我...我再加个判断鼠标位置
ho121
2018-05-06 09:34:13 +08:00
右键另存为?
ho121
2018-05-06 09:36:17 +08:00
防复制不如转成图片
gelilaohuang
2018-05-06 15:09:25 +08:00
![WX20180506-150501@2x.png]( https://i.loli.net/2018/05/06/5aeeaa0bcd038.png)

network block url
131
2018-05-06 16:28:18 +08:00
@gelilaohuang download and (rename or insert)
Roycom
2018-06-28 13:23:44 +08:00
全站直接图片输出

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/452199

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX