制作者の活動(PR)。

堀北真希うさぎ(うさ耳女子大生)
主な作品

制作者の創作キャラクタのイラスト例とそれを組み込んだアニメーション動画

いわゆる右クリック禁止について。

HTML文書のソースを見られたくないなどの理由から、いわゆる右クリックを禁止しているコンテンツが見られますが、全く意味は無いと思います。

いわゆる右クリック禁止について・目次。

いわゆる右クリック禁止を実現するには。

いわゆる右クリック禁止のための機能は、ファイヤーフォックスなどもじら系のユーザエージェントとインターネットエクスプローラが実装しております。

具体的には、<body>要素oncontextmenu属性を与え、その値として右クリックが成された際に実行するスクリプトを記述します。

しかしながら、このoncontextmenu属性は標準的なHTMLには含まれておらず、従ってoncontextmenu属性を用いた時点で文法違反となります。

このため、スクリプトでoncontextmenu属性を後から付け加える事が考えられます。

この方法は、ダイナミックHTMLとDOM内のJAVAスクリプトと文書の分離で解説しておりますが、実際のソースは以下のようになるでしょう。

wold=window.onload;
window.onload=brc;

function brc() {
    if (document.getElementById && !window.opera) {
        eles=document.getElementsByTagName('body');
        if (!document.all) {
            eles[0].setAttribute('oncontextmenu','return(brc2()); ');
            }
        else eles[0].oncontextmenu=brc2;
        }
    if (wold) wold();
    }

function brc2() {
    alert('右クリックダメ!'); return(false);
    }

右クリック禁止が無意味な理由。

右クリック禁止は、以下のような理由から全く意味はありません。

対応していないユーザエージェントがある

オペラでは実行出来ないようです。

この手のトリックをしたがる者は、恐らくインターネットエクスプローラの事しか考えていないと思いますが、数パーセントとは言え決して少なくないオペラユーザには一切通じません。

また、旧式のユーザエージェントでも無理です。

事に依っては右クリック以外の方法がある

ウィンドウズ上のファイヤーフォックスなら、Ctrlキーを押しながらUキーを押せば、ソースファイルが開きます。

インターネットエクスプローラなどでも、ツールバーからメニューを撰べばソース表示が可能です。

つまり、ソースを見られたくないから右クリックを封じると言うは、全く意味が無いのです。

右クリック規制そのものを封じる事の出来るユーザエージェントもある

ファイヤーフォックスでは、JAVAスクリプトの動作可否を細かく指定出来ます。

その中には、右クリックメニューを開かせなかったり改竄させるスクリプトの実行を止める項目もあります。

実際にファイヤーフォックスでこの設定をしている方なら、右クリックの際に変なアラートが表示されても、それを消せば右クリックメニューがちゃんと表示されるのをご覧になった方もいるでしょう。

そもそも、ソースを見せたくないのに何で文書を公開したいのでしょうか?

HTML文書はマークアップされたソースがあって初めてユーザエージェントが処理・表示出来るのです。

つまり、文書を見せている以上、ソースも見られたって特に問題は無い筈です。

要するに、ソースを見せないという発想そのものが意味が無いと言えます。

結論。

右クリック禁止は全く意味がありませんし、その機能を求める事自体がおかしいのです。

ですから、制作者はJAVAスクリプトのコーナでの解説を忌避したのです。

しらぎくのウェブサイト作成入門サイトマップ

ページ外へのご案内。

marguerite.site@gmail.com