IE用のペースト禁止設定はできましたが、Firefoxでは対応していないみたいでFirefoxにも対応している方法がありましたら参考サイトもしくは、教えて頂ければとおもいます。

現状ソース
<input name="email確認用" type="text" size="50" onpaste=" alert('手入力をお願いします。');return false" />

宜しくお願い致します。

A 回答 (1件)

Firefoxではonpasteに対応していないようなので


一応以下の記述でIE/FFどちらも動作確認しています。

-------------------------------------------------------------------------
<script type="text/javascript">
<!--
function showMessage() {
document.getElementById("img01").style.display = "block";
return false;
}
-->
</script>
<input type="text" oncontextmenu="return false" onkeydown="if ((event.keyCode == 86 && event.ctrlKey) || (event.keyCode == 45 && event.shiftKey)) { return showMessage();}"><br>
<img src="http://hogehoge/hoge.gif" style="display:none;" id="img01">
<!-- ↑貼り付け禁止みたいな画像 -->
-------------------------------------------------------------------------

一応、
・右クリック>貼り付け(右クリック自体負荷)
・Ctrl+V
・Shift+Insert
のペーストは禁止できるはずです。
また、アラートを使用していないのは
FFで return false 前にアラートを出してしまうと
その間にイベントが通ってしまいペーストを防ぐことができないので
ペースト禁止のような感じの画像を作成して
それを表示させてやるような処理を作っています。

お役に立てればいいですが。。。
    • good
    • 0
この回答へのお礼

理想的なご回答誠にありがとうございます。
なるほど、詳しいご説明いただき大変参考になりました。

問題なく稼動しました。

お礼日時:2007/08/29 11:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

Qif(document.all && navigator.appVersion.indexOf('Mac')!=-1)returnの意味

よろしくお願いします。
JavaScriptの勉強をしているのですが、参考にしている書籍に以下の構文が出てきまして、それの意味が分からなくて悩んでいます。

//MacIE4,5バグ 回避
if(document.all && navigator.appVersion.indexOf('Mac')!=-1)return

//以降に記してあるとおり、OSがMacintoshだった場合に何らかの処置を行うプログラムなのは分かるのですが・・。
navigator.appVersion.indexOf('Mac')!=-1の部分は、「navigator.appVersion.indexOf('Mac')が1ではなかったら、Macユーザーであるということ、で、falseが返されるのでしょうか?
しかし、そもそもnavigatorオブジェクトはブラウザの種類のことではないのか?と混乱してしまっています。
また、document.allがどのような役割を果たしているのかも分かりません。なぜここでdocument.allが出てくるのでしょうか?

どなたか分かる方いらっしゃいましたら、ご教授宜しくお願いします。

よろしくお願いします。
JavaScriptの勉強をしているのですが、参考にしている書籍に以下の構文が出てきまして、それの意味が分からなくて悩んでいます。

//MacIE4,5バグ 回避
if(document.all && navigator.appVersion.indexOf('Mac')!=-1)return

//以降に記してあるとおり、OSがMacintoshだった場合に何らかの処置を行うプログラムなのは分かるのですが・・。
navigator.appVersion.indexOf('Mac')!=-1の部分は、「navigator.appVersion.indexOf('Mac')が1ではなかったら、Macユーザーであるということ...続きを読む

Aベストアンサー

「document.all」は昔はIEにだけ存在するオブジェクトだったのでIEであるかどうかの判定に使われました。

今ではOperaやNetscape等でもIEへの互換の為に存在するのでIEかどうかの判定に使われる事は減ってきています。
IEであるかどうかの判定ではなく、純粋にdocument.allが在る(使える)かという判定にはもちろん使用されますが。

「navigator.appVersion」は確かにブラウザの種類なんですが、実際にはOS名も含まれていたりすのでOSの判定にも使われたりします。

また、 != -1 というのは indexOf関数の結果が 0~なら文字列が見つかったという意味(真偽ではなく、見つかった位置を返す関数)になるのでこういう比較式を使用しています。
(1でなかったらMacユーザという解釈はちょっと違います。)

参考URL:http://www.openspc2.org/JavaScript/ref/

QIE7のJavascriptで return false をしてもリンクしてしまう

これまでjavascript無効の人のために

<a href="test.html" onclick="test();return false;">link</a>

という感じで、無効の人はリンク先へ飛んで、有効の人はJavascriptを実行して処理する、といったコードを使っていました。
しかし、IE7では、onclickで false が帰ってきても、そのままリンクにいってしまうようで困っています。 IE6、Firefox2では思うように(onclickだけで止まる)動いてくれます。

もうこれは仕様のため、全面的に書き直さなければならないのでしょうか?
ご存じの方おられましたらご教示いただけると幸いです。

Aベストアンサー

test()の中でエラーになってるだけだと思ったのですが、、、?
test()はどの様な内容でしょうか?


<a href="aaa.html" onclick="return false;">検証</a>
これで動作が止まりますか?


IE6とIE7のチェックはどの様にされています?
パソコンを2台用意するとか、マルチブートしてるとか・・・

IE7 StandAloneを入れていると、動作がかなり変わるらしいですが、
インストールしていませんか?
http://tredosoft.com/IE7_standalone

今まで動いていたスクリプトがこれをインストールすると動かなくなったという話や、
CSSの表示の仕方も変わると聞いたことがあります。
もしそうなら、対策は、基本的にはIE7 Stand Aloneをアンインストールしかないと思います。

Q【続】 ポップアップ表示の後のreturn false

http://oshiete1.goo.ne.jp/qa3050617.html

でtalooさんにお返事をいただき、できた~!と書いて、
質問を締め切ってしまいましたが、talooさんが書いてくださっていた

>あらかじめeventを渡す必要があります。

というのを見落としていました。ごめんなさい!! (T-T)
うう、おっちょこちょいな自分を呪います。

IEでは、教えていただいたevent.preventDefaultを
第二引数を使わずに関数の中で使う方法でも、
希望通りの動作をしてくれました。
ですが、Mozillaではやはり小ウィンドウを出した後、
元のHTMLがページトップに戻ってしまいました。
もちろんMozillaでもtalooさんのおっしゃるように、
eventを第二引数としてhtml側から渡してやればOKでした。

逆に言えば、やはりHTML側の記述に変更を加えずに済む方法はない、ということなのでしょうか・・・?
たびたびすいませんがよろしくお願いいたします。m(_ _)m

Aベストアンサー

こんにちは

<script language="javascript">
<!--
function sWin(url) {
window.open(url,"win","width=300px,height=300px");
}
//-->
</script>

<a href="javascript:sWin('./popup.html')">link</a>

これでどうですか?

Q

<input type="hidden" name = "hoge">があったとします。
これを、javascriptを使用し nameで検索します。
”hoge”を検索後、その”hoge”という名前を変更する方法を探しています。 

<input type="hidden" name = "hoge">
       ↓↓↓↓↓
<input type="hidden" name = "fuga"> 

リフレッシュ無しで、上記のようにnameを変える方法が知りたいです。

ご存知の方おりましたら、お手数ですが教えていただけませんでしょうか。
宜しくお願いいたします。

Aベストアンサー

タグが特定出来れば、setAttribute等で属性値を変更出来ます。
setAttribute("name","fuga")

Qで、Q1に後で値を設定して表示するには

お世話になります。
<input type="text" name="Q1">で、Q1に後で値を設定して表示するにはどうしたら良いものでしょうか。
name="Q1"
と、しているので、
onMousedown="function()"
で、nameでしてしたエリアに値を書き込めば、できると思うのですが、
このfunction()をどのように書いたらよいものか、いろいろ調べてもわかりません。
何とかご教示願えないでしょうか。
よろしくお願いします。

Aベストアンサー

javascriptを利用することで出来ます。
こんな感じで動くでしょう。
ちなみにテキストボックスなどをjavascriptで操作する場合は
idをつけておくと便利です。

これ以上をやりたいというのであれば
参考URLなど見て勉強してみてください
<html>
<head>

</head>
<body>

<input type="text" id="Q1" name="Q1" onmousedown="hoge()">
</body>
<script type='text/javascript'>
function hoge()
{
Q1.value = ""; //""のなかに設定する値
}
</script>

参考URL:http://www.parkcity.ne.jp/~chaichan/src/javasc21.htm


人気Q&Aランキング

おすすめ情報