有時自己辛苦半天做的網頁,尤其是一些javascript特效,很容易被人利用查看源文件而復制。那么如何才能防止被人查看源代碼呢?我們可以利用event.button特性來做到。下表是event.button屬性的可能取值及含義:
0 沒按鍵
1 按左鍵
2 按右鍵
3 按左和右鍵
4 按中間鍵
5 按左和中間鍵
6 按右和中間鍵
7 按所有的鍵
參照上表,我們可以在<body>和</body>之間加入如下語句:
<Script Langvage=javascript>
function Click(){
if (event.button!=1){alert(‘版權所有(C)2001 XXX工作室‘);
}}
document.onmousedown=Click;
</Script>
這樣在瀏覽網頁時除單擊鼠標左鍵外,其他任何形式的鼠標點擊或組合點擊,都將出現“版權所有(C)2001 XXX工作室”的提示框,而不是出現快捷菜單,從而避免被人查看源文件代碼。
如果使event.button=2,實際上它僅能限制點擊鼠標右鍵情況,其他點擊方式,如按左右鍵、按左和中間鍵、按中間鍵等就不能限制,當這些方式的點擊發生時,出現的就是快捷菜單,從而可以查看源文件。
注意:把body改為如下代碼:<body oncontextmenu="window.event.returnValue=false">,其中Value中的V一定要大寫!!
頁面禁用鼠標右鍵代碼
可以把下面代碼加入到頁面適當位置。
LeadBBS論壇應用下面代碼時,可以打開:inc/Board_Popfun.asp文件
查找:
<script language = "JavaScript" src = "<%=DEF_BBS_HomeUrl%>inc/JF.js" type="text/javascript"></script>
下面加入代碼。
<script language=javascript>
function openScript(url, width, height,left,top,r){
var Win = window.open(url,"openScript",‘width=‘ + width + ‘,height=‘ + height + ‘,left=‘ +left+ ‘,top=‘+top+‘,resizable=no,scrollbars=‘+r+‘,menubar=no,status=no‘ );
}
//以下為禁止鼠標右鍵的代碼,不想禁止的可以刪除
<!--
if (window.Event)
document.captureEvents(Event.MOUSEUP);
function nocontextmenu()
{
event.cancelBubble = true
event.returnValue = false;
return false;
}
function norightclick(e)
{
if (window.Event)
{
if (e.which == 2 || e.which == 3)
return false;
}
else
{if (event.button == 2 || event.button == 3) {alert("【E路極速】歡迎你"); } }
{
event.cancelBubble = true
event.returnValue = false;
return false;
}
}
document.oncontextmenu = nocontextmenu; // for IE5+
document.onmousedown = norightclick; // for all others
//-->
</script>
圖片禁用鼠標右鍵代碼
應用方法同上。
<script language="JavaScript1.2">
var clickmessage="本站圖片禁用右鍵!"
function disableclick(e) {
if (document.all) {
if (event.button==2||event.button==3) {
if (event.srcElement.tagName=="IMG"){
alert(clickmessage);
return false;
}
}
}
if (document.layers) {
if (e.which == 3) {
alert(clickmessage);
return false;
}
}
}
function associateimages(){
for(i=0;i<document.images.length;i++)
document.images[i].onmousedown=disableclick;
}
if (document.all)
document.onmousedown=disableclick
else if (document.layers)
associateimages()
</script>
功能:禁止右鍵、禁選擇、禁粘貼、禁shift、禁ctrl、禁alt
<script language="JavaScript">
<!--
function key(){
if(event.shiftKey){
window.close();}
//禁止Shift
if(event.altKey){
window.close();}
//禁止Alt
if(event.ctrlKey){
window.close();}
//禁止Ctrl
return false;}
document.onkeydown=key;
if (window.Event)
document.captureEvents(Event.MOUSEUP);
function nocontextmenu(){
event.cancelBubble = true
event.returnValue = false;
return false;}
function norightclick(e){
if (window.Event){
if (e.which == 2 || e.which == 3)
return false;}
else
if (event.button == 2 || event.button == 3){
event.cancelBubble = true
event.returnValue = false;
return false;}
}
//禁右鍵
document.oncontextmenu = nocontextmenu; // for IE5+
document.onmousedown = norightclick; // for all others
//-->
</script>
<body onselectstart="return false"; onpaste="return false";>