JavaScript - 右クリックを無効化にする
・javascript 右クリック (Google検索結果)
例えば、Webブラウザの機能であるソースの表示などを「右クリック」からは無効化できる。
IEならば、「表示」- 「ソース」で表示できるが・・・。
筆者の経験としては、どうしてもそのサイトの画像をダウンロードしたくて「表示」-「ソース」から画像ファイルのURLをアドレス欄にコピペしてアクセスするも、
http 403Forbidden(アクセス不可)
どうやらアクセス制限をかけているようだ。・・・;。;
皆さんもダウンロードなどされたくなければ対策を練っておくことです。
「JavaScriptの機能をアクセス側のブラウザが無効化していれば意味がないものだ。」
【case1】 <body onContextmenu=" return false"> 右クリックを無効にします </body> 【case2】 <script type="text/javascript"><!-- if(document.all || document.getElementById){//IE専用 document.onmousedown = RightClick; // 右クリックイベント取得 }else if(document.layers){ // Mozilla(Firefox, NN) とOpera 専用 window.captureEvents(Event.MOUSEDOWN); window.onmousedown = RightClick; //右クリックイベント取得 } function RightClick(e){ if(document.all || document.getElementById){//IE専用 if(event.button & 2){ //2は右クリックを指す alert("右クリック不可"); return(false); } }else if(document.layers){ // Mozilla(Firefox, NN) とOpera専用 if(e.which == 3){ alert("右クリック不可"); return(false); } } } //--></script>
・イベント
buttonは、IE用で、1は左ボタン、2は右ボタン、4は真中のボタンをあらわし、2つ以上のボタンが押された場合はその合計値となる。
whichはNetscape用だ。どのマウスボタンが押されたかを判別するものだ。1が左ボタン、2が中央、3が右ボタンである。
IEかMozillaかWebブラウザを判別してから右クリックの関数を取得して判別を図っている。