這些語法平常不一定要用,就算要用的話,一般也會用在「單一頁面」中居多,有幾種特殊情形可以考慮使用:
- 1、單頁的頁面中有自己加的js或jq語法效果或功能,不想讓這些語法被看被複製拿去用。
- 2、單頁中有用js或jq語法來遮蓋一些資料,例如「*」,若有人停用瀏覽器的js運作,這些用語法遮蓋資料的較果會全失效。
■1.禁用f12
<script>
document.body.onkeydown = function(e){
var keyCode = e.keyCode || e.which || e.charCode;
var ctrlKey = e.ctrlKey || e.metaKey;
if(ctrlKey && (keyCode == 83 || keyCode == 85 || keyCode == 73)) {
e.preventDefault();
return false;
}else if(keyCode && keyCode == 123){
return false;
}
}
</script>
■2.鎖右鍵
以「不開放看網頁原始碼」的考量點→這種鎖右鍵語法是純鎖右鍵而已,沒有鎖選取文字與Ctrl+C的複製,主要是讓網友們可以有需要複製文字時仍可以用Ctrl + C來複製。
全站鎖右鍵且防複製實在有點不太友善,所以我們只以「不開放看網頁原始碼」的考量點。
<script>
document.oncontextmenu = function (){
return false;
}
</script>
■3.判斷客戶端是否禁用javascript,如果禁用就不給他看網頁內容
這句很棒,如果網友們的瀏覽器禁用js,就把網頁內容全數消失,讓那些用js語法遮蓋的字句也無法原貌呈現。
<noscript><p style="font-size:70px;">對不起,你的瀏覽器不支持或禁用了JavaScript,無法正常使用此網站</p></noscript>
或
<noscript><body style="display:none"></body></noscript>
1與3我覺得可以用在全站,放在footer執行即可。
相信以上應可以防止到8~9成的有心人。