登录
首页 >  文章 >  前端

如何防止浏览器隐藏元素设置影响页面水印?

时间:2024-11-20 21:28:08 458浏览 收藏

从现在开始,我们要努力学习啦!今天我给大家带来《如何防止浏览器隐藏元素设置影响页面水印?》,感兴趣的朋友请继续看下去吧!下文中的内容我们主要会涉及到等等知识点,如果在阅读本文过程中有遇到不清楚的地方,欢迎留言呀!我们一起讨论,一起学习!

如何防止浏览器隐藏元素设置影响页面水印?

阻止浏览器隐藏元素设置

在页面加入水印时,一个潜在的问题是浏览器提供的隐藏元素设置。为了防止用户通过该设置修改水印,可以采取以下措施:

1. 禁止右键菜单和 f12

以下代码可禁止右键查看源代码和使用 f12 键盘快捷键打开控制台:

//禁止f12键盘事件
document.addeventlistener('keydown', function(event){
   return 123 != event.keycode || (event.returnvalue = false)
});
//禁止右键、选择、复制
document.addeventlistener(‘'contextmenu'’, function(event){
   return event.returnvalue = false
})

2. 通过页面宽度变化监测控制台

浏览器打开控制台时,窗口的宽度和高度通常会发生变化。可以通过监测这些变化来判断控制台是否被打开:

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()

3. 利用 debugger

debugger 命令可中断代码执行,用于调试目的。可以利用该命令进行无限递归,让控制台持续忙于调试,从而防止用户查看代码:

function check() {
    function doCheck(a) {
        (function() {}["constructor"]("debugger")()); //debugger
        doCheck(++a);
    }
    try {
        doCheck(0)
    } catch(err) {
        console.log(err)
    }
};

4. 转换为图片

将水印内容转换为图片可以有效防止用户隐藏或修改水印。这样做的好处是用户无法通过浏览器的隐藏元素设置来修改图像。

今天关于《如何防止浏览器隐藏元素设置影响页面水印?》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>