首页 > 文章列表 > 如何防止用户使用浏览器隐藏元素设置来去除网页水印?

如何防止用户使用浏览器隐藏元素设置来去除网页水印?

288 2025-04-07

如何防止用户使用浏览器隐藏元素设置来去除网页水印?

如何防止用户使用浏览器隐藏元素设置?

在网页水印中,为了防止用户篡改,需要禁止浏览器提供的隐藏元素选项。下面介绍几种解决方案:

1. 禁止右键查看源码和 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 的特性,无限递归

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

其他建议

  • 将整体转换成图片,避免用户单独去掉水印。
  • 持续关注浏览器的更新,及时采取针对性的措施。
来源:1729909265