标题总结了问题。
我对 Chrome 68+ 特别感兴趣。
我有一个网站。我想知道如果用户打开 chrome 检查器并编写代码,他会执行什么代码。
网站不可能知道执行了什么代码。
它可能以多种方式能够检测控制台中运行的代码的副作用,但知道输入的内容是不可行的。
您可以使用以下代码片段阻止打开开发工具 如果浏览器在选项卡上提供检查按钮,这会有一些流程
document.querySelectorAll('*').forEach(el => {
el.addEventListener('contextmenu', e => {
e.preventDefault()
})
})
document.addEventListener('keydown', e => {
if (e.key === 'F12' || (e.ctrlKey && e.shiftKey && e.key === 'I')) {
e.preventDefault()
}
})
body {
margin: 0;
padding: 0;
overflow: hidden;
}
div {
width: 100vw;
height: 100vh;
background-color: black;
color: white;
display: flex;
justify-content: center;
align-items: center;
font-size: 2rem;
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Prevent from Open Inspect Menu</title>
</head>
<body>
<div></div>
</body>
</html>
是和否,因为您必须使用 ctrl-shift-i 在浏览器中进行检查,但这仍然只是检查。