<body oncontextmenu="return false">禁用网页右键菜单,但是仍然可以使用快捷键复制。

js代码禁用复制功能:

<script  type="text/javascript">
document.body.onselectstart=document.body.oncontextmenu=function(){ return false;}
</script>

注意这段代码必须放在body元素后面,放在前面或者放在head里面都不起作用。

补全:document.body.onselectstart  页面选中功能。

document.body.oncontextmenu页面右键菜单。

document.body.ondragstart页面内容拖拽功能,拖拽是可以实现复制的。禁止复制时需要将其禁用。

document.body.oncopy页面内容复制功能,当禁用时,即使你点击了复制或使用了快捷键但是你剪切板中的内容不是你刚复制的内容而是你以前放在剪切板中的内容或为空。

document.body.oncut页面内容剪切功能,禁用和效果和禁用复制功能类似。

注意:当使用了上述禁用功能后,如果页面的某个角落还可以右键或复制,那是因为你的body没有覆盖整个页面,可以在body上添加如下属性。

leftMargin=0 topMargin=0  style="width: 100%;height: 100%;"

通过设置body属性来禁用复制功能代码如下:

<body oncontextmenu="return false" onselectstart="return false"

ondragstart="return false" oncopy="return false"


oncut="return false;

 leftMargin=0

topMargin=0  style="width: 100%;height: 100%;" >

以下代码是禁用网页另存为但是我测试没有成功,谁知道原因可以在下面给出评论,谢谢。

<noscript>


<iframe scr="*.htm"></iframe>


</noscript>

</body>

js代码案例:

//********************  屏蔽右键   ***********************
function click(e) {
if (document.all) {
 if (event.button==1||event.button==2||event.button==3) {
  oncontextmenu='return false';
 }
}
if (document.layers) {
 if (e.which == 3) {
  oncontextmenu='return false';
 }
}
}
if (document.layers) {
document.captureEvents(Event.MOUSEDOWN);
}
document.onmousedown=click;
document.oncontextmenu = new Function("return false;")
//*******************************************
document.onkeydown=function(evt){
if(document.selection.createRange().parentElement().type == "file"){
return false;
}
if ((event.keyCode==116)||                    //屏蔽 F5 刷新键    
        (event.ctrlKey && event.keyCode==82)){    //Ctrl + R   
       event.keyCode=0;    
       event.returnValue=false;    
       }   
    if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4
return false;
}
}

随机推荐

  1. hdoj 2203 亲和串

    亲和串 Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submiss ...

  2. SIGGRAPH

    这两天看了一些文章,今天来说说SIGGRAPH. 对于搞图形学的人来说,SIGGRAPH绝对是如雷贯耳.SIGGRAPH是计算机图形界(也包含图像)最顶级的会议,没有之中的一个,是全世界的图形学者公认 ...

  3. sort详解

    一. 简介 sort命令是帮我们依据不同的数据类型进行排序. 二. 语法 sort [-bcfMnrtk][源文件][-o 输出文件] 补充说明:sort可针对文本文件的内容,以行为单位来排序(默认为 ...

  4. JavaScript DOM编程艺术-学习笔记(总结一)

    1.1)dom-core方法:(不专属于js,支持dom的任何一种程序设计语言都可以使用它,它们的用途,也不仅限于处理网页,也可以用来处理任何一种标记语言编写处理的文档)  ①getElementBy ...

  5. React文档(十三)思考React

    在我们的看来,React是使用js创建大型快速网站应用的首要方法.它在Facebook和Instagram的使用已经为我们展现了它自己. React的一个很好的地方就在于当你创建应用的时候它使你思考如 ...

  6. js 异步请求

    <p id="check"> <label>验证码:</label> <input class="vid" id=&q ...

  7. Cloud Commander

    一.Cloud Commander简介: Cloud Commander 是一个基于 web 的文件管理程序,它允许你通过任何计算机.移动端或平板电脑的浏览器查看.访问或管理系统文件或文件夹.它有两个 ...

  8. 动态规划-背包问题 Knapsack

    2018-03-15 13:11:12 背包问题(Knapsack problem)是一种组合优化的NP完全问题.问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何 ...

  9. 【BZOJ 2437】 2437: [Noi2011]兔兔与蛋蛋 (博弈+二分图匹配**)

    未经博主同意不得转载 2437: [Noi2011]兔兔与蛋蛋 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 693  Solved: 442 Des ...

  10. cnpm install 之后 Angular2 Build --prod 报错

    95% emittingUnhandled rejection Error: ENOENT: no such file or directory, open 'E:\git_0.28\adminTem ...