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

yizhihongxing

实现禁止右键和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日

相关文章

  • 教你如何设置本地IP地址解决IP地址冲突问题

    设置本地IP地址解决IP地址冲突问题攻略 当多个设备在同一网络上使用相同的IP地址时,就会发生IP地址冲突问题。为了解决这个问题,你可以按照以下步骤设置本地IP地址。 步骤一:查找当前IP地址 首先,你需要查找当前设备的IP地址。你可以按照以下步骤进行操作: 打开命令提示符(Windows)或终端(Mac和Linux)。 输入ipconfig(Windows…

    other 2023年7月29日
    00
  • android上superuser获取root权限原理解析

    Android上Superuser获取Root权限原理解析 什么是Superuser? 在Android系统中,有些应用程序需要获取Root权限才能够执行一些敏感操作,比如修改系统设置、进入系统目录等等。Superuser就是一种允许应用程序获取Root权限的工具。 当安装Superuser后,用户可以决定哪些应用程序可以访问Root权限,哪些应用程序被禁止…

    其他 2023年3月28日
    00
  • 原生js实现下拉刷新和上拉加载更多

    标题:原生 JavaScript 实现下拉刷新和上拉加载更多 要实现下拉刷新和上拉加载更多功能,遵循以下步骤: 监听 touchstart、touchmove 和 touchend 事件,记录下起始位置和滑动距离 在 touchend 事件中,当滑动距离超过一定距离时,在页面顶部或底部添加加载中的提示条,并触发请求加载数据的函数 在数据加载完成后,调用相应的…

    other 2023年6月25日
    00
  • Windows10在文件资源管理器中显示/隐藏文件扩展名(后缀名)

    Windows 10文件资源管理器中显示/隐藏文件扩展名(后缀名)攻略 在Windows 10的文件资源管理器中,你可以选择显示或隐藏文件的扩展名(也称为后缀名)。下面是详细的攻略,包含两个示例说明。 显示文件扩展名 要在文件资源管理器中显示文件扩展名,请按照以下步骤进行操作: 打开文件资源管理器。你可以通过按下Win + E键组合来快速打开它。 在文件资源…

    other 2023年8月5日
    00
  • adb工具配置和设备连接

    ADB工具配置和设备连接 ADB(Android Debug Bridge)是一种用于在Android设备和计算机之间进行通信的工具。它可以用于调试应用程序、安装应用程序、备份和恢复数据等。本文将提供一份关于ADB工具配置和设备连接的完整攻略,包括如何安装ADB工具、配置ADB环境变量、连接Android设备和示例代码。 步骤1:安装ADB工具 要开始使用A…

    other 2023年5月9日
    00
  • Java抽象类、继承及多态和适配器的实现代码

    Java抽象类、继承及多态和适配器是面向对象编程中的重要概念,可以优化代码的复用性和可读性。在Java中,抽象类是一个不能被实例化的类,它只能用作父类,用于声明抽象方法。子类继承抽象类后必须要实现父类中的所有抽象方法才能被实例化。继承是指一个类可以继承另一个类的属性和方法,多态是指一个对象可以在不同的情况下表现出不同的形态,实现适配器则是将一个类的接口转换成…

    other 2023年6月26日
    00
  • 简单了解JAVA中类、实例与Class对象

    下面是详细讲解 “简单了解JAVA中类、实例与Class对象” 的完整攻略: 一、类 在Java中,类是对象的蓝图(blueprint),它定义了对象的属性(attribute)和方法(method)。类是一个模板,在使用之前必须被实例化。 类的定义格式: public class Person{ // 类的属性 private String name; p…

    other 2023年6月27日
    00
  • Android 访问文件权限的四种模式介绍

    Android 访问文件权限的四种模式介绍 在Android开发中,访问文件权限是一个重要的话题。Android提供了四种不同的文件访问权限模式,分别是: 私有模式(Private Mode):在私有模式下,应用程序可以创建和访问其私有目录中的文件。其他应用程序无法直接访问这些文件。这种模式适用于应用程序需要保存用户数据或配置信息的情况。以下是一个示例: F…

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