JavaScript 屏蔽用户按键或鼠标功能类

本文详细介绍了如何通过编程方式屏蔽浏览器键盘输入、鼠标操作、快捷键、浏览器右上角按键、特定页面滚动条,以及阻止剪贴板拷屏、网站打印功能、IE后退按钮等交互行为,同时提供了实现方法和技术细节。

1.1 屏蔽键盘所有键
< language="Java">
<!--
down(){
event.keyCode = 0;
event.return = false;
}
-->
</>
1.2 屏蔽鼠标右键
在body标签里加上oncontextmenu=self.event.return=false
或者
< language="Java">
<!--
oncontextmenu() 
{ 
return false; 
} 
-->
</>
nocontextmenu()
{ 
if(all) {
event.cancelBubble=true;
event.return=false; 
return false; 
}
}
或者
<body down="rclick()" oncontextmenu= "nocontextmenu()">
< language="java">
<!--
rclick()
{
if(all) {
if (event.button == 2){
event.return=false;
}
}
}
-->
</>

1.3 屏蔽 Ctrl+N、Shift+F10、F5刷新、退格键
< language="java">
<!--
//屏蔽鼠标右键、Ctrl+N、Shift+F10、F5刷新、退格键
onhelp(){return false} //屏蔽F1帮助
KeyDown(){
if ((event.altKey)&&
((event.keyCode==37)|| //屏蔽 Alt+ 方向键 ←
(event.keyCode==39))){ //屏蔽 Alt+ 方向键 →
alert("不准你使用ALT+方向键前进或后退网页!");
event.return=false;
}
/* 注:这还不是真正地屏蔽 Alt+ 方向键,
因为 Alt+ 方向键弹出警告框时,按住 Alt 键不放,
用鼠标点掉警告框,这种屏蔽方法就失效了。以后若
有哪位高手有真正屏蔽 Alt 键的方法,请告知。*/
if ((event.keyCode == 8) && 
(event.srcElement.type != "text" && 
event.srcElement.type != "textarea" && 
event.srcElement.type != "password") || //屏蔽退格删除键 
(event.keyCode==116)|| //屏蔽 F5 刷新键
(event.ctrlKey && event.keyCode==82)){ //Ctrl + R
event.keyCode=0;
event.return=false;
}
if ((event.ctrlKey)&&(event.keyCode==78)) //屏蔽 Ctrl+n
event.return=false;
if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10
event.return=false;
if (event.srcElement.tagName == "A" && event.shiftKey) 
event.return = false; //屏蔽 shift 加鼠标左键新开一网页
if ((event.altKey)&&(event.keyCode==115)){ //屏蔽Alt+F4
showModelessDialog("blank","","dialogWidth:1px;dialogheight:1px");
return false;}
}
/* 另外可以用 open 的方法屏蔽 IE 的所有菜单
第一种方法:
open("你的.htm", "","toolbar=no,location=no,directories=no,menubar=no,scrollbars=no,resizable=yes,status=no,top=0,left=0")
第二种方法是打开一个全屏的页面:
open("你的.ASP", "", "fullscreen=yes")
*/
//-->
</>
1.4屏蔽浏览器右上角“最小化”“最大化”“关闭”键
< language=java>
onbeforeunload()
{
if(event.clientX>body.clientWidth&&event.clientY<0||event.altKey)
{
event.return = "";
}
}
</>
或者使用全屏打开页面
< language="java">
<!--
open(www.32pic.com,"32pic","fullscreen=3,height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no,location=no, status=no");
-->
</>
注:在body标签里加上onbeforeunload="java:return false"(使不能关闭窗口)
1.5屏蔽F5键
< language="java">
<!--
down() 
{ 
if ( event.keyCode==116) 
{ 
event.keyCode = 0; 
event.cancelBubble = true; 
return false; 
}
}
-->
</>
1.6屏蔽IE后退按钮
在你链接的时候用 <a href="java:location.replace(url)">
1.7屏蔽主窗口滚动条
在body标签里加上 style="overflow-y:hidden"
1.8 屏蔽拷屏,不断地清空剪贴板
在body标签里加上="setInterval('clipboardData.setData(\'Text\',\'\')',100)"
1.9 屏蔽网站的打印功能
<style>
@media print {
* { display: none }
}
</style>
1.10 屏蔽IE6.0 图片上自动出现的保存图标
方法一:
< HTTP-EQUIV="imagetoolbar" CONTENT="no">
方法二:
<img galleryimg="no">
1.11 屏蔽页中所有的
<noscrript></no>
 
【事件触发一致性】研究多智能体网络如何通过分布式事件驱动控制实现有限时间内的共识(Matlab代码实现)内容概要:本文围绕多智能体网络中的事件触发一致性问题,研究如何通过分布式事件驱动控制实现有限时间内的共识,并提供了相应的Matlab代码实现方案。文中探讨了事件触发机制在降低通信负担、提升系统效率方面的优势,重点分析了多智能体系统在有限时间收敛的一致性控制策略,涉及系统模型构建、触发条件设计、稳定性与收敛性分析等核心技术环节。此外,文档还展示了该技术在航空航天、电力系统、机器人协同、无人机编队等多个前沿领域的潜在应用,体现了其跨学科的研究价值和工程实用性。; 适合人群:具备一定控制理论基础和Matlab编程能力的研究生、科研人员及从事自动化、智能系统、多智能体协同控制等相关领域的工程技术人员。; 使用场景及目标:①用于理解和实现多智能体系统在有限时间内达成一致的分布式控制方法;②为事件触发控制、分布式优化、协同控制等课题提供算法设计与仿真验证的技术参考;③支撑科研项目开发、学术论文复现及工程原型系统搭建; 阅读建议:建议结合文中提供的Matlab代码进行实践操作,重点关注事件触发条件的设计逻辑与系统收敛性证明之间的关系,同时可延伸至其他应用场景进行二次开发与性能优化。
【四旋翼无人机】具备螺旋桨倾斜机构的全驱动四旋翼无人机:建模与控制研究(Matlab代码、Simulink仿真实现)内容概要:本文围绕具备螺旋桨倾斜机构的全驱动四旋翼无人机展开,重点研究其动力学建模与控制系统设计。通过Matlab代码与Simulink仿真实现,详细阐述了该类无人机的运动学与动力学模型构建过程,分析了螺旋桨倾斜机构如何提升无人机的全向机动能力与姿态控制性能,并设计相应的控制策略以实现稳定飞行与精确轨迹跟踪。文中涵盖了从系统建模、控制器设计到仿真验证的完整流程,突出了全驱动结构相较于传统四旋翼在欠驱动问题上的优势。; 适合人群:具备一定控制理论基础和Matlab/Simulink使用经验的自动化、航空航天及相关专业的研究生、科研人员无人机开发工程师。; 使用场景及目标:①学习全驱动四旋翼无人机的动力学建模方法;②掌握基于Matlab/Simulink的无人机控制系统设计与仿真技术;③深入理解螺旋桨倾斜机构对飞行性能的影响及其控制实现;④为相关课题研究工程开发提供可复现的技术参考与代码支持。; 阅读建议:建议读者结合提供的Matlab代码与Simulink模型,逐步跟进文档中的建模与控制设计步骤,动手实践仿真过程,以加深对全驱动无人机控制原理的理解,并可根据实际需求对模型与控制器进行修改与优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值