- ベストアンサー
右クリック禁止タグについて
右クリック禁止のタグを調べていたら、 <BODY oncontextmenu="alert('ここに文字');return false;"> という短いのと <SCRIPT language=JavaScript>という書き出しで始まる長いのがあるようなのですが、 この二種類は何が違うのでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
oncontextmenu という短いものは IE や Gecko に有効ですが、Opera には効果がありません。 一方 script タグで始まる長いものはいろいろな条件を考慮して作成されています。 スクリプトの種類によっては Opera を含む複数のブラウザ間で正常に動作するものもあります。 参考 URL などにサンプルが載っていますのでそちらをどうぞ。
その他の回答 (2)
- LLLuna
- ベストアンサー率35% (13/37)
前者も後者も基本的には同じです。後者は、多くのブラウザで動作するようにしてあるものと思われます。(実際にそうなのかどうかは、スクリプトを見ないと解りません 画像等の持ち帰りを防止する目的であれば、使わない方が無難です。 右クリックを禁止するものは、画像等の持ち帰り防止には全く役に立たない上、閲覧者からは嫌がられます。右クリック時にアラートメッセージが出るようにしている(alert('~'))ものは、特に嫌われます。 結果、閲覧者の足が遠のく可能性が高いです。 うっかり右クリックしただけで、毎回アラートメッセージが出るようなサイトに、アクセスしたいと思いますか? 余談ですが、”右クリック禁止タグ”という名称より、”右クリック禁止スクリプト”の方が適切です。一般によく使われるのは前者ですが。
- sakura_394
- ベストアンサー率33% (2/6)
個人的にこの質問は自分も気になったので調べてみました。 oncontextmenuとはIE5からサポートされた右クリックイベントハンドラで、Window標準の右クリックメニューの表示をキャンセルできるというものらしいです。 画像に関するimgタグに書かれることもありますが、この場合はBODYに書かれていますので、『画面全体が右クリックしても表示がキャンセル』されます。 ただし、これが有効なのはIE5.0以上とFirefoxのみで、Operaでは無視されるみたいです。 下のようにJAVA Scriptで書かれている場合は各ブラウザに対応して書かれていることが多いですが、個人的な意見を言わせてもらえるならこういった方法で右クリック出来ないようにしても画像やソース等の持ち帰りは可能です。 そういう用途で使用する場合はあまり意味がないので、どちらもあまりお勧めは出来ないかと^^;(違う用途でお考えでしたらすみません)