
如何阻止用户使用浏览器隐藏元素设置
在制作网页水印时,为防止用户篡改,需考虑浏览器提供的隐藏元素选项带来的潜在风险。以下是禁止浏览器隐藏元素的几种方法:
禁止右键查看源码和 F12
// 禁止 F12 键盘事件document.addEventListener('keydown', function(event) { return 123 != event.keyCode || (event.returnValue = false)});// 禁止右键、选择、复制document.addEventListener('contextmenu', function(event) { return event.returnValue = false})
通过页面宽度变化监测控制台
监测浏览器的可视区域宽高和浏览器宽高的差值。如果差值大于指定阈值,则认为控制台已被开启。
function resize() { var threshold = 200; var widthThreshold = window.outerWidth - window.innerWidth > threshold; var heightThreshold = window.outerHeight - window.innerHeight > threshold; if (widthThreshold || heightThreshold) { console.log('控制台打开了') }}window.addEventListener('resize', resize);resize()
利用 debugger 的特性进行无限递归
function check() { function doCheck(a) { (function() {}["constructor"]("debugger")()); //debugger doCheck(++a); } try { doCheck(0) } catch(err) { console.log(err) }}
如果控制台未开启,debugger 将不会起作用,但递归会继续,直至浏览器堆栈溢出抛出错误。如果控制台开启,则会触发不断断点的调试,严重时可能导致浏览器卡死。
此外,还可以考虑将网页整体转换成图片,以避免用户单独移除隐藏元素。
以上就是如何防止用户使用浏览器工具隐藏网页水印?的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1559128.html
微信扫一扫
支付宝扫一扫