- - PR -
[ASP.NET2.0]コンテキストメニューの制御について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-08-21 13:33
ブラウザ:IE6.0 SP2
<DOCTYPE>タグが定義されているHTMLで、 <body>タグにoncontextmenuプロパティにfalseを設定すると、 <body>タブの範囲のみでしかコンテキストメニューが非表示なりません。 ちなみに<DOCTYPE>タグを消すと<body>タグの範囲外でもコンテキストメニューは表示されませんでした。 こういった事例をご存じの方がおられましたら、ご教授願います。 あと、ASP2.0で<DOCTYPE>タグを削除しても問題ないでしょうか? | ||||||||
|
投稿日時: 2006-08-21 13:43
bodyタグの範囲外でブラウザ上に表示されているものがあるということ自体がおかしいような気がしますが。。。
| ||||||||
|
投稿日時: 2006-08-21 13:54
どっとねっとふぁん様
>bodyタグの範囲外でブラウザ上に表示されているものがあるということ自体がおかしいような気がしますが。。。 説明不足でした。 ブラウザを全画面表示にして余白部分で右クリックするとコンテキストメニューが表示されるんです。 <body>タグの範囲外でブラウザ上にボタン等が表示されている訳ではないです。。。 | ||||||||
|
投稿日時: 2006-08-21 14:44
こんにちは。
「oncontextmenuプロパティにfalseを設定」というのは、たぶん JavaScript の oncontextmenu イベントハンドラにて、戻り値に false を返 すことを指していると思われますが、正しいでしょうか。 もしそうならば、質問内容が回答者に伝わるように用語などは正しく書くべきです。 実際どっとねっとふぁんさんは誤解されているようですし。
<!DOCTYPE>『宣言』を消すと動作が変わるのは、IE の標準準拠モードと後 方互換モードの違いによるものだと思われます。 宣言を削除することで後方互換モードになるため、<body>要素の外(余白部 分)でもコンテキストメニューが表示されないようになるのでしょう。 参考資料 http://www.seo-equation.com/www/cat25/doctype_switching.html 個人的には後方互換モードは今後は廃止されていくと思われるので、積極的に 使用するのはお勧めできません。 そもそも右クリックを出さないようにすること自体お勧めしませんが。 _________________ ぽぴ王子@わんくま同盟 ぽぴ王子の人生プログラミング中 / ぽぴンち。 | ||||||||
|
投稿日時: 2006-08-21 19:12
>ぽぴ王子
ありがとうございます。 記載頂いたURL内容を見る限り<!DOCTYPE>タグがなくても問題なさそうなので、 記述しないことにします。 >そもそも右クリックを出さないようにすること自体お勧めしませんが。 これはエンドユーザーからの指定ですので覆すことはできません。 | ||||||||
|
投稿日時: 2006-08-21 19:21
いえ、quirk にするならするで明示的に記述してください。 # 私も、右クリックを出さないようにすること自体お勧めしません (アクセシビリティ的に x) が、 # ユーザーにうまく提案できなかったのであれば、しょうがないですね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||
|
投稿日時: 2006-08-22 22:00
読んでみて→ユーザの操作を制御する/悪意のデータからシステムを守る link to わんくま同盟ブログ
出来れば、そこからリンクしている、「じゃぁ、どうすりゃいいのさ」「やるべきことをやろうよ」も。
エンドユーザの要望であっても、覆せないものではありません。もっとも、説得できるだけの要素をお持ちでないなら、覆せませんが。→わんくま同盟勉強会 #1 反省と補足 link to わんくま同盟ブログ
「相談者」は、「相談相手」の間違いだな。直しとこ。ってか、話の立場がコロコロ入れ替わっているな。書き直そうっと。 | ||||||||
|
投稿日時: 2006-12-04 21:19
だいぶ遅い返答ですが、IE7では、
<script type="text/javascript"> <!-- // 右クリック禁止 function document.oncontextmenu(){ return false; } //--> </script> でできました。 [ メッセージ編集済み 編集者: MKT 編集日時 2006-12-04 21:19 ] |
1