Chinaunix首页 | 论坛 | 博客
  • 博客访问: 209427
  • 博文数量: 97
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1024
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-03 09:03
文章分类
文章存档

2017年(17)

2016年(54)

2015年(25)

2014年(1)

我的朋友

分类: Web开发

2016-07-06 10:24:33

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

曾经也是受害者的我,如今作为一名小小的IT开发人员,就来告诉你如何“禁用右键”!

这里列举一个我在利用FineReport开发报表时遇到的案例。

启用“禁止右键”

报表大家都懂吧,启用“禁用右键”功能,往往是出于展示过程中的数据安全和操作上的失误考虑(想想银行动辄几千几百万的金额,分分钟要长个心眼啊)

首先在页面中调用模板,一般是将url放在iframe中,然后通过点击相应的树节点查看报表,一般报表都会设置权限,如果设置权限,登录系统后可能有些用户通过点击右键中的属性查看url然后访问,这样对系统来说其实是很不安全的,因此禁止用户通过右键查看url,此时可以使用禁用菜单右键功能。

2. 实现步骤

点击模板>模板web属性>(填报,数据分析,分页预览设置),选择为该模板单独设置,在下面的事件设置里面添加一个加载结束事件,完整js代码如下:

点击(此处)折叠或打开

  1. 1.//点击右键 无动作
  2. document.oncontextmenu=new Function("return false");
  3. 2.//点击右键 弹出提示
  4. document.oncontextmenu=function(e) {
  5.    alert("提示内容");
  6.    return false;
  7. }


这段代码的基本原理是让用户的页面右键点击事件返回false,禁止弹出菜单。
如果模板中有参数面板,希望一调用模板就禁用右键,而不是查询之后禁用,则需要在参数面板的查询按钮中添加初始化事件,写入上述js代码。



查询之前就做提示和禁用


破解“禁用右键”

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


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


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


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

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

阅读(2534) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~