很多人会遇到这种情况,在浏览页面时,发现鼠标右键不启用了。咦?刷新刷新再刷新,并无卵用,然后怒敲鼠标(没错,我就是这么暴力),更换浏览器,无用,最后弃之。其实,这是因为设计人员对页面启用了“禁用右键”功能,目的是为了防止内容被抄。

曾经也是受害者的我,如今作为一名小小的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代码。

查询之前就做提示和禁用

破解“禁用右键”

找到浏览器顶部菜单中的【工具】按钮,在下拉菜单中,选择【Internet选项】

打开Internet选项后,再切换到【安全】选项卡,然后再点击底部的【自定义级别】

然后在打开的【安全设置-Internet区域】对话框中,找到【活动脚本】设置选项,然后将默认的“启用”更改为【禁用】,最后再一路点击底部的【确定】。

然后关闭再重启浏览器,再打开刚刚的网页,你就会发现“残疾”的鼠标右键能正常点击了。

以上就是我的方法,不足之处还请多多指点。