這篇文章主要介紹如何使用JavaScript禁止復制網站內容,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
若是你不想別人復制你的網站內容,可以把這段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 h2 {color: gold;text-align:center;margin-bottom:30px;}
.container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;}
</style>
</head>
<body>
<div>
<h2>火影忍者</h2>
<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>第三種方法:
在<body>中加入以下代碼:
<body oncontextmenu="return false" onselectstart="return false"> 或 <body oncontextmenu="event.returnValue=false" onselectstart="event.returnValue=false"> body中加入代碼的這種方法有個缺陷就是取決于body的內容,如果body內容較少,從body下方往上選中內容, 仍然是可以復制網站的內容的。
第四種方法:
如果只限制復制,可以在<body>加入以下代碼:
<body oncopy="alert('對不起,禁止復制!');return false;">
例子:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<style>
*{margin: 0;padding: 0;}
.container h2 {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>
<h2>火影忍者</h2>
<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 h2 {color: gold;text-align:center;margin-bottom:30px;}
.container p {width: 500px;margin:0 auto;color: purple;text-indent: 30px;}
</style>
</head>
<body>
<div>
<h2>火影忍者</h2>
<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禁止復制網站內容”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。