若是你不想別人複製你的網站內容,可以把這段js程式碼加到你網頁上,即可封鎖滑鼠右鍵選單、複製貼上、選取等。
有時候的需求是網站中有些內容不希望別人複製,那就需要用程式碼控制。
方法有多種:
第一種:
//屏蔽右键菜单 document.oncontextmenu = function(event) { if (window.event) { event = window.event; } try { var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) { return false; } return true; } catch (e) { return false; } } //屏蔽粘贴 document.onpaste = function(event) { if (window.event) { event = window.event; } try { var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) { return false; } return true; } catch (e) { return false; } } //屏蔽复制 document.oncopy = function(event) { if (window.event) { event = window.event; } try { var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) { return false; } return true; } catch (e) { return false; } } //屏蔽剪切 document.oncut = function(event) { if (window.event) { event = window.event; } try { var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) { return false; } return true; } catch (e) { return false; } } //屏蔽选中 document.onselectstart = function(event) { if (window.event) { event = window.event; } try { var the = event.srcElement; if (!((the.tagName == "INPUT" && the.type.toLowerCase() == "text") || the.tagName == "TEXTAREA")) { return false; } return true; } catch (e) { return false; } }
第二種方法:
加入以下js程式碼
<script type="text/javascript"> // oncontextmenu 事件在元素中用户右击鼠标时触发并打开上下文菜单 document.oncontextmenu=new Function("event.returnValue=false"); // onselectstart几乎可以用于所有对象,其触发时间为目标对象被开始选中时(即选中动作刚开始,尚未实质性被选中) document.onselectstart=new Function("event.returnValue=false"); </script> 例子: <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <style> *{margin: 0;padding: 0;} .container h1 {color: gold;text-align:center;margin-bottom:30px;} .container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;} </style> </head> <body> <div> <h1>火影忍者</h1> <p> 十多年前一只拥有巨大威力的妖兽“九尾妖狐”袭击了木叶忍者村,当时的第四代火影拼尽全力, 以自己的生命为代价将“九尾妖狐”封印在了刚出生的鸣人身上。木叶村终于恢复了平静, 但村民们却把鸣人当成像“九尾妖狐”那样的怪物看待,所有人都疏远他。 鸣人自小就孤苦无依,一晃十多年过去了,少年鸣人考入了木叶村的忍者学校,结识了好朋友佐助和小樱。 佐助是宇智波家族的传人之一,当他还是小孩的时候他的哥哥——一个已经拥有高超忍术的忍者将他们家族的人都杀死了, 然后投靠了一直想将木叶村毁灭的大蛇丸,佐助自小就发誓要超越哥哥,为家族报仇。 鸣人他们在忍者学校得到了教官卡卡西的精心指点,在他的帮助下去迎接成长中的一次又一次挑战! </p> </div> <!-- 第二种方法:通过js代码实现 --> <script type="text/javascript"> // oncontextmenu 事件在元素中用户右击鼠标时触发并打开上下文菜单 document.oncontextmenu=new Function("event.returnValue=false"); // onselectstart几乎可以用于所有对象,其触发时间为目标对象被开始选中时(即选中动作刚开始,尚未实质性被选中) document.onselectstart=new Function("event.returnValue=false"); </script> </body> </html>
#第三種方法:
在6c04bd5ca3fcae76e30b72ad730ca86d中加入以下程式碼:
<body oncontextmenu="return false" onselectstart="return false"> 或 <body oncontextmenu="event.returnValue=false" onselectstart="event.returnValue=false"> body中加入代码的这种方法有个缺陷就是取决于body的内容,如果body内容较少,从body下方往上选中内容, 仍然是可以复制网站的内容的。
第四種方法:
如果只限制複製,可以在6c04bd5ca3fcae76e30b72ad730ca86d加入以下程式碼:
<body oncopy="alert('对不起,禁止复制!');return false;"> 例子: <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <style> *{margin: 0;padding: 0;} .container h1 {color: gold;text-align:center;margin-bottom:30px;} .container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;} </style> </head> <body oncopy="alert('对不起,禁止复制!');return false;"> <div> <h1>火影忍者</h1> <p> 十多年前一只拥有巨大威力的妖兽“九尾妖狐”袭击了木叶忍者村,当时的第四代火影拼尽全力, 以自己的生命为代价将“九尾妖狐”封印在了刚出生的鸣人身上。木叶村终于恢复了平静, 但村民们却把鸣人当成像“九尾妖狐”那样的怪物看待,所有人都疏远他。 鸣人自小就孤苦无依,一晃十多年过去了,少年鸣人考入了木叶村的忍者学校,结识了好朋友佐助和小樱。 佐助是宇智波家族的传人之一,当他还是小孩的时候他的哥哥——一个已经拥有高超忍术的忍者将他们家族的人都杀死了, 然后投靠了一直想将木叶村毁灭的大蛇丸,佐助自小就发誓要超越哥哥,为家族报仇。 鸣人他们在忍者学校得到了教官卡卡西的精心指点,在他的帮助下去迎接成长中的一次又一次挑战! </p> </div> </body> </html>
#第五個方法:
停用Ctrl C和Ctrl V,程式碼:
// 禁用Ctrl+C和Ctrl+V(所有浏览器均支持) $(document).keydown(function(e) { if(e.ctrlKey && (e.keyCode == 86 || e.keyCode == 67)) { return false; } }); 例子 <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <style> *{margin: 0;padding: 0;} .container h1 {color: gold;text-align:center;margin-bottom:30px;} .container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;} </style> </head> <body> <div> <h1>火影忍者</h1> <p> 十多年前一只拥有巨大威力的妖兽“九尾妖狐”袭击了木叶忍者村,当时的第四代火影拼尽全力, 以自己的生命为代价将“九尾妖狐”封印在了刚出生的鸣人身上。木叶村终于恢复了平静, 但村民们却把鸣人当成像“九尾妖狐”那样的怪物看待,所有人都疏远他。 鸣人自小就孤苦无依, 一晃十多年过去了,少年鸣人考入了木叶村的忍者学校,结识了好朋友佐助和小樱。 佐助是宇智波家族的传人之一,当他还是小孩的时候他的哥哥——一个已经拥有高超忍术的忍者将他们家族的人都杀死了, 然后投靠了一直想将木叶村毁灭的大蛇丸,佐助自小就发誓要超越哥哥,为家族报仇。 鸣人他们在忍者学校得到了教官卡卡西的精心指点,在他的帮助下去迎接成长中的一次又一次挑战! </p> </div> <script src="http://libs.baidu.com/jquery/2.1.1/jquery.min.js"></script> <script> $(document).keydown(function(e) { if(e.ctrlKey && (e.keyCode == 86 || e.keyCode == 67)) { alert('不能Ctrl+C和Ctrl+V复制、粘贴'); return false; } }); </script> </body> </html>
如有錯誤,歡迎聯絡我改正,非常感謝! ! !
更多程式相關知識,請造訪:程式設計教學! !
以上是使用JavaScript禁止複製網站內容的幾種方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!