js屏蔽F12审查元素,禁止修改页面代码等实现代码

实现屏蔽F12审查元素和禁止修改页面代码需要结合JavaScript和HTML的相关特性。以下是一个完整的攻略:

1. 使用JavaScript禁止页面右键功能

在页面中加入以下JavaScript代码,可以禁止页面的右键功能:

document.oncontextmenu = function () {
    return false;
}

以上代码中,document.oncontextmenu表示捕获右键菜单事件,函数体内返回 false 表示阻止浏览器打开右键菜单。这样做可以防止用户通过右键查看网页源代码。

2. 使用JavaScript判断F12调起事件

在页面中加入以下JavaScript代码,可以通过捕获F12按键事件来判断用户是否打开了开发者工具:

document.onkeydown = function (event) {
    if (event.keyCode == 123) {
        alert('F12被禁用');
        return false;
    }
}

以上代码中,document.onkeydown表示捕获键盘按下事件,event.keyCode == 123 表示捕获F12按键事件,函数体内通过 alert 方法弹出提示信息,同时返回 false 表示阻止浏览器进行默认操作。这样可以防止用户通过F12查看网页源代码。

3. 使用JavaScript禁用控制台

如果要禁用控制台,可以在页面中加入以下JavaScript代码:

// 禁用控制台
if (typeof console !== 'undefined') {
    console.clear();
    console.info('%c', 'padding:50px 100px; line-height:300px; background:url(https://i.loli.net/2021/06/14/Pt7iSHoQWZeznhb.png) no-repeat;');
    console.info('%c请不要在本站进行非法操作!', 'color:red; font-size: 20px; text-shadow:0px 3px 5px #FFF;');
    console.info('%c您的IP已被记录,请自觉遵守法律法规!', 'color:#333; font-size: 16px;');
    setInterval(function () {
        console.clear();
    }, 1000);
}

以上代码中使用了 if (typeof console !== 'undefined') 判断控制台是否可用。如果控制台可用,则通过 console.clear() 清空控制台,并使用 console.info 方法输出自定义的提示信息。通过 setInterval 函数循环清空控制台,可以防范一些技术比较高的用户恶意查看网站代码。

4. 不要过分依赖js

要注意的是,以上的JavaScript代码都是在客户端运行的,如果用户禁用JavaScript,那么以上技术都将失效。因此,我们不能过分依赖JavaScript,对于一些敏感信息,还是需要在服务器端进行限制和保护。

示例说明

下面是两个示例,详细说明了如何使用以上技术来禁用F12审查和修改网页代码:

示例一

<html>
<head>
    <script>
        // 禁用F12审查
        document.onkeydown = function (event) {
            if (event.keyCode == 123) {
                alert('F12被禁用');
                return false;
            }
        }

        // 禁止页面右键功能
        document.oncontextmenu = function () {
            return false;
        }
    </script>
</head>
<body>
    <h1>禁用F12审查和页面右键功能示例</h1>
    <p>这是一个示例页面,演示如何禁用F12审查和页面右键功能。</p>
</body>
</html>

在以上示例中,通过在页面的 <head> 标签中加入 JavaScript 代码实现了禁用 F12 审查和页面右键功能的功能。

示例二

<html>
<head>
    <script>
        // 禁用控制台
        if (typeof console !== 'undefined') {
            console.clear();
            console.info('%c', 'padding:50px 100px; line-height:300px; background:url(https://i.loli.net/2021/06/14/Pt7iSHoQWZeznhb.png) no-repeat;');
            console.info('%c请不要在本站进行非法操作!', 'color:red; font-size: 20px; text-shadow:0px 3px 5px #FFF;');
            console.info('%c您的IP已被记录,请自觉遵守法律法规!', 'color:#333; font-size: 16px;');
            setInterval(function () {
                console.clear();
            }, 1000);
        }
    </script>
</head>
<body>
    <h1>禁用控制台示例</h1>
    <p>这是一个示例页面,演示如何禁用控制台。</p>
</body>
</html>

在以上示例中,通过在页面的 <head> 标签中加入 JavaScript 代码实现了禁用控制台的功能。在控制台中输出了一些自定义的信息,通过每秒钟执行一次 console.clear() 方法来清空控制台,防止用户恶意查看网站代码。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js屏蔽F12审查元素,禁止修改页面代码等实现代码 - Python技术站

(0)
上一篇 2023年6月10日
下一篇 2023年6月10日

相关文章

  • Python使用Asyncio进行web编程方法详解

    Python使用Asyncio进行Web编程方法详解 概述 Asyncio是Python 3中内置的异步编程框架,它允许开发者使用协程方式来进行异步编程,以此提供高效的I/O操作和并发处理。在Web编程中,Asyncio也被广泛应用。本篇文章将详细介绍如何使用Asyncio进行Web编程。 使用Asyncio进行Web编程的基本步骤 1. 安装必要的依赖 在…

    JavaScript 2023年5月28日
    00
  • 分享5个JS 高阶函数

    下面就是分享5个JS高阶函数的攻略。 什么是高阶函数? 在JavaScript中,高阶函数是指能够接受一个或多个函数作为参数,并返回一个新函数的函数。它们是函数式编程的核心概念之一。 1. Array.prototype.map map 是 JavaScript 中最常用的高阶函数之一。该方法接受一个函数作为参数,该函数将应用到数组的每个元素,并返回一个新数…

    JavaScript 2023年5月27日
    00
  • Unicode中的CJK(中日韩统一表意文字)字符小结

    Unicode中的CJK(中日韩统一表意文字)字符小结 什么是CJK字符 CJK字符是指中文、日文、韩文等东亚文字的一种统称。CJK字符的特点是字形复杂,有很多笔画,而且其中有很多类似的字形。为了便于处理这些东亚文字,Unicode(标准化的字符编码系统)将CJK字符统一编码为一组字符集,称为CJK统一表意字符集。 CJK字符在Unicode中的编码 在Un…

    JavaScript 2023年5月19日
    00
  • JavaScript获取浏览器信息的方法

    JavaScript获取浏览器信息的方法是前端开发中很常用的一种技术。通过获取浏览器信息,我们能够更好地对用户的设备进行优化,提升用户体验。下面是获取浏览器信息的几种方法: 1. navigator对象 window.navigator对象是一个保存了浏览器的一些信息的对象,我们可以利用它来获取相关的信息。常用的属性有: userAgent: 返回浏览器的用…

    JavaScript 2023年6月11日
    00
  • js 通过cookie实现刷新不变化树形菜单

    这里我为你详细讲解如何通过JS的Cookie实现刷新不变化树形菜单的攻略。 什么是Cookie? Cookie是存储在客户端(即浏览器端)的一小段文本信息,它们通常被用来记录用户的一些信息、记录用户的行为或者实现一些状态的保存。 用Cookie实现刷新不变化树形菜单的攻略 检查Cookie是否存在 在刷新网页时,我们可以通过JS代码检查Cookie是否存在,…

    JavaScript 2023年6月11日
    00
  • 如何利用JS实现时间轴动画效果

    下面是详细的“如何利用JS实现时间轴动画效果”的攻略。 1. 确定实现目标 在开始编写JS代码前,首先需要明确实现的时间轴动画效果,例如时间轴的布局样式、时间点的标记形式、动画效果等。明确实现目标有助于后续的编码过程,避免出现不必要的错误。 2. 构建HTML结构 在HTML中构建出时间轴的基本结构,例如采用<ul>和<li>元素表示…

    JavaScript 2023年5月27日
    00
  • js中substr,substring,indexOf,lastIndexOf,split,replace的用法详解

    那我就为你介绍一下 Javascript 中几个常用字符串相关的方法。 1. substr substr() 方法用于截取字符串中的任意部分,并返回截取的结果。substr() 方法有两个参数,第一个参数是起始索引位置,第二个参数是截取的长度。如果不指定第二个参数,则截取到末尾。其语法如下: str.substr(start[, length]) 示例代码:…

    JavaScript 2023年5月28日
    00
  • vue 项目打包通过命令修改 vue-router 模式 修改 API 接口前缀

    在讲解“vue 项目打包通过命令修改 vue-router 模式修改 API 接口前缀”之前,我们需要了解一下几个基本概念。 vue-router:是 Vue.js 官方提供的路由管理插件。 API 接口前缀:是指 API 接口的 URL 前面的部分,通常包含域名、端口号等信息。 下面是详细的攻略: 修改 vue-router 模式: Vue Router …

    JavaScript 2023年6月11日
    00
合作推广
合作推广
分享本页
返回顶部