防止右键单击href

时间:2011-04-18 23:20:42

标签: javascript jquery html

<a href="Profile.aspx?ProfileId=1" class="view-profile">View profile<a>

当用户点击我的href时,会有一个treatment =“。ajax脚本,允许或者用户查看个人资料。”

问题是当用户右键单击我的href时,忽略处理并且用户可以看到所有配置文件。

如何阻止右键点击? 或者,当用户右键单击我的href时,如何执行相同的处理(检查)。 我测试了下面的代码,但没有工作:

    $(function() {
            $('.view-profile').bind("contextmenu", function(e) {
             return false;
              });
     });

提前致谢。

2 个答案:

答案 0 :(得分:6)

您不应该依赖客户端验证来控制用户权限,因为它很容易被黑客攻击;相反,使用服务器端和客户端验证,或仅使用服务器端。

答案 1 :(得分:-2)

<script language=JavaScript>
<!--

//Disable right mouse click Script
//By Maximus (maximus@nsimail.com) w/ mods by DynamicDrive
//For full source code, visit http://www.dynamicdrive.com

var message="Function Disabled!";

///////////////////////////////////
function clickIE4(){
if (event.button==2){
alert(message);
return false;
}
}

function clickNS4(e){
if (document.layers||document.getElementById&&!document.all){
if (e.which==2||e.which==3){
alert(message);
return false;
}
}
}

if (document.layers){
document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=clickNS4;
}
else if (document.all&&!document.getElementById){
document.onmousedown=clickIE4;
}

document.oncontextmenu=new Function("alert(message);return false")

// --> 
</script>

- 来源:http://www.dynamicdrive.com/dynamicindex9/noright.htm