background image
教你禁用右键,也教你如何破解
很多人会遇到这种情况,在浏览页面时,发现鼠标右键不启用了。咦?刷新刷新再刷新,并
无卵用,然后怒敲鼠标(没错,我就是这么暴力),更换浏览器,无用,最后弃之。其实,
这是因为设计人员对页面启用了“禁用右键”功能,目的是为了防止内容被抄。
曾经也是受害者的我,如今作为一名小小的
IT 开发人员,就来告诉你如何“禁用右键”!
这里列举一个我在利用
FineReport 开发报表时遇到的案例。
启用“禁止右键”
报表大家都懂吧,启用“禁用右键”功能,往往是出于展示过程中的数据安全和操作上的失
误考虑
(想想银行动辄几千几百万的金额,分分钟要长个心眼啊)。
首先在页面中调用模板,一般是将
url 放在 iframe 中,然后通过点击相应的树节点查看报表,
一般报表都会设置权限,如果设置权限,登录系统后可能有些用户通过点击右键中的属性查
url 然后访问,这样对系统来说其实是很不安全的,因此禁止用户通过右键查看 url,此时
可以使用禁用菜单右键功能。
2. 实现步骤
点击模板
>模板 web 属性>(填报,数据分析,分页预览设置),选择为该模板单独设置,在
下面的事件设置里面添加一个加载结束事件,完整
js 代码如下:
1.//点击右键 无动作
document.oncontextmenu=new Function("return false");
2.//点击右键 弹出提示
document.oncontextmenu=function(e) {
alert("提示内容");
return false;
}
这段代码的基本原理是让用户的页面右键点击事件返回
false,禁止弹出菜单。
如果模板中有参数面板,希望一调用模板就禁用右键,而不是查询之后禁用,则需要在参数
面板的查询按钮中添加初始化事件,写入上述
js 代码。