当前位置: 代码迷 >> 综合 >> 前端:屏蔽F12审查元素,禁止修改页面代码
  详细解决方案

前端:屏蔽F12审查元素,禁止修改页面代码

热度:23   发布时间:2024-02-04 12:20:08.0

所周知,审查元素的情况下,大家都可以随机更改一部分页面的代码,

注入恶意JS等等,这种情况避免也不难,虽然还能看到一部分H5源码,但是无法修改

 

一、屏蔽F12 审查元素

 

 

document.onkeydown = function(){if(window.event && window.event.keyCode == 123) {alert("F12被禁用");event.keyCode=0;event.returnValue=false;}if(window.event && window.event.keyCode == 13) {window.event.keyCode = 505;}if(window.event && window.event.keyCode == 8) {alert(str+"\n请使用Del键进行字符的删除操作!");window.event.returnValue=false;}}

 

 

除了屏蔽这个,我们还有其他有趣的设置:


二、屏蔽右键菜单
document.oncontextmenu = function (event){
if(window.event){
event = window.event;
}try{
var the = event.srcElement;
if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")){
return false;
}
return true;
}catch (e){
return false;
}
}

三、屏蔽粘贴
document.onpaste = function (event){
if(window.event){
event = window.event;
}try{
var the = event.srcElement;
if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")){
return false;
}
return true;
}catch (e){
return false;
}
}

四、屏蔽复制
document.oncopy = function (event){
if(window.event){
event = window.event;
}try{
var the = event.srcElement;
if(!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")){
return false;
}
return true;
}catch (e){
return false;
}
}

五、屏蔽剪切
document.oncut = function (event){
if(window.event){
event = window.event;
}try{
var the = event.srcElement;
if(!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")){
return false;
}
return true;
}catch (e){
return false;
}
}

这种很适合小说网站,毕竟版权珍贵,被别人随意copy走内容就不好了

六、屏蔽选中
document.onselectstart = function (event){
if(window.event){
event = window.event;
}try{
var the = event.srcElement;
if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")){
return false;
}
return true;
} catch (e) {
return false;
}
}

(本文转自博客园的 Clark_Kent ,感谢经验分享!)

  相关解决方案