javascript实现禁止右键和F12查看源代码

实现禁止右键和F12查看源代码是一种常见的网页保护技巧,可以防止非法复制、盗取网页资源等安全问题。下面是针对该问题的完整攻略:

步骤一:禁止右键

方法一:使用JavaScript

在HTML页面的 \ 标签内加入下述js代码可以禁止右键:

<script>
    document.oncontextmenu = function() {
        return false;
    }
</script>

当用户点击鼠标右键时,oncontextmenu事件触发,返回false即可禁止右键。

方法二:在网页中插入空div

在网页中插入一个空的 div,设置它的 CSS 样式为 display:none,然后在这个 div 上监听鼠标右键的点击事件,就可以达到禁止右键的效果。

<div style="display:none" oncontextmenu="return false"></div>

下面是一个简单的示例,禁止了鼠标右键:

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>禁止右键示例</title>
    <style>
        div {
            display:none;
        }
    </style>
</head>
<body>
    <div oncontextmenu="return false"></div>
    <h1>禁止右键示例</h1>
    <p>请尝试右键,看是否被禁止。</p>
</body>
</html>

步骤二:禁止F12查看源代码

方法一:监听键盘事件

F12 是键盘上的一个键,可以监听键盘事件,在用户按下 F12 的时候禁止其执行。

document.onkeydown = function(){
    if(window.event && window.event.keyCode == 123) {
        alert("F12 is disabled");
        event.keyCode = 0;
        event.returnValue = false;
    }
}

方法二:检测开发者工具

开发者工具可以帮助开发者快速调试代码,但也可以用于查看源代码。可以在页面上监听控制台输出事件,当有控制台事件输出时即说明开发者工具被打开,进而禁止访问页面。

下面是一个监听控制台事件输出的示例:

function detectDevTools() {
    let threshold = 160;
    let lastTime = new Date().getTime();
    setInterval(function() {
        let currentTime = new Date().getTime();
        if (currentTime - lastTime > threshold) {
            window.location.href = "http://localhost:3000";
        }
        lastTime = currentTime;
    }, threshold);
}

detectDevTools();

当监测到控制台输出事件时,会自动跳转到指定页面。

综上所述,禁止右键和F12查看源代码的完整攻略如上所述。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:javascript实现禁止右键和F12查看源代码 - Python技术站

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

相关文章

  • 如何使用processon制作思维导图

    如何使用ProcessOn制作思维导图 思维导图是一种常用的知识整理工具,可以方便地将复杂的思路整理成清晰可见的图形。而ProcessOn是一款免费、易用的思维导图工具,以下是使用ProcessOn制作思维导图的详细步骤。 步骤一:注册帐号 访问ProcessOn官网(https://www.processon.com/)后,点击右上角的“注册”按钮,填写邮…

    其他 2023年3月28日
    00
  • QT环境下实现UI界面的“拼图游戏”

    QT环境下实现UI界面的“拼图游戏”的完整攻略 QT是一款跨平台的C++应用程序开发框架,它可以帮助开发者快速地实现UI界面和应用程序。本文将为您提供一份完整攻略,包括QT环境下实现UI界面的基本原理、实现方法、示例说明等。 QT环境下实现UI界面的基本原理 QT环境下实现UI界面的基本原理是通过QT提供的UI设计工具和QT的信号槽机制来实现。开发者可以使用…

    other 2023年5月5日
    00
  • 无畏契约显示连线错误怎么办 瓦罗兰特提示连线错误解决方法

    无畏契约显示连线错误怎么办 无畏契约(Valorant)是一款多人竞技游戏,大多数情况下玩家可以正常连接到游戏服务器,但在某些时候,会出现连线错误的提示,导致玩家无法正常游戏。那么我们该如何解决这个问题呢?下面就为大家详细讲解一下。 瓦罗兰特提示连线错误解决方法 1. 检查网络连接 在出现连线错误的情况下,首先要检查自己的网络连接是否正常。可以先测试一下自己…

    other 2023年6月27日
    00
  • STL priority_queue(优先队列)详解

    STL priority_queue(优先队列)详解 什么是 STL priority_queue? STL priority_queue 是一种基于堆的数据结构,用于实现优先队列,即能够按照特定的优先级顺序(默认为大顶堆)存储和访问元素。它是一个模板类,可以存储任何类型的数据,保证了插入元素和删除元素的时间复杂度都为 $O(logN)$。 如何使用 STL…

    other 2023年6月27日
    00
  • 关于Spring启动流程及Bean生命周期梳理

    关于Spring启动流程及Bean生命周期梳理 Spring启动流程 在Spring应用程序启动时,Spring框架会完成一系列的初始化工作。具体而言,Spring启动流程如下: 加载配置文件:Spring框架首先会读取应用程序中的配置文件。对于基于XML的配置来说,通常是读取applicationContext.xml文件。对于基于Java的配置来说,通常…

    other 2023年6月27日
    00
  • 360安全桌面怎么设置文件筐 自定义分框内容介绍

    下面是详细讲解“360安全桌面怎么设置文件筐 自定义分框内容介绍”的攻略。 1. 什么是360安全桌面文件筐 360安全桌面是一个以安全为主要特点的桌面管理工具,提供了一系列实用工具供用户管理计算机和使用,其文件筐功能是其中一个重要的组成部分。文件筐是一个虚拟的文件夹,用户可以通过将文件或文件夹拖入文件筐,来将它们统一管理。在设置文件筐时,用户不仅能够选择不…

    other 2023年6月25日
    00
  • MFC之ComboBox控件用法实例教程

    MFC之ComboBox控件用法实例教程 什么是ComboBox控件 ComboBox控件在MFC中是一种下拉式列表框,它可以显示一些选项供用户选择,同时也允许用户输入自定义的选项内容。该控件常用于数据输入和选择性操作上。 如何在MFC中使用ComboBox控件 使用ComboBox控件需要先创建一个ComboBox对象,该对象会被添加到对应的对话框或者视图…

    other 2023年6月27日
    00
  • 复杂系统中的用户权限数据库设计解决方案

    我来为你讲解“复杂系统中的用户权限数据库设计解决方案”的完整攻略。 一、设计需求分析 1.1 系统架构简述 首先我们需要了解复杂系统的架构,从而确定我们需要设计的用户权限数据库解决方案。复杂系统通常由多个子系统组成,这些子系统之间存在着不同的数据访问权限和使用权限。 在这样的系统架构下,我们需要设计一个用户权限数据库,用于存储用户与资源之间的关系,并根据用户…

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