CGI-BBS > JAVA/JavaScript > JavaScript > JavaScriptの設置で右クリックをCGIに埋め込むとエラー


カレッヂ
カレッヂ


質問者 鶴太郎  投稿日 2003/12/25(木) 17:01:33
HTMLではOKですがCGIに組み込むとエラーになります、何方か教えて下さい。
タグも色々使い分けて見たのですがエラーになってしまいます。


<script language="Javascript">
<!--
	var Mac   = navigator.userAgent.indexOf("Mac") != -1   ? true : false;
	function mdown(e) {
	if (navigator.appName == "Microsoft Internet Explorer") {

		if (event.button == 2 || (Mac && (event.ctrlKey || event.keyCode == 91))) {
			alert("右クリック禁止。");
			return(false);
		}
	  } else if (navigator.appName == "Netscape") {
		if (e.which == 3 || e.modifiers == 2 || e.ctrlKey) {
			alert("右クリック禁止。");
			return false;
	    }
	  } 
	}


	if (document.all) {
		document.onmousedown = mdown;
		document.onkeydown = mdown;
	} else if (document.layers) {
		window.captureEvents(Event.MOUSEDOWN | Event.modifiers | Event.KEYDOWN);
		window.onmousedown = mdown;
		window.onkeydown = mdown;
	} else if(navigator.userAgent.indexOf("Netscape6")!=-1){
  		document.onmouseup = mdown; 
		document.onkeydown = mdown;
	}

//-->
</script>

プロバイダ参照:サーバーはカゴヤです http://www.kagoya.net/
サーバのOS:WINサーバ
パソコンのOS:WinNT系
エディタ:
FTPソフト:
サーバ移転:していない
改造:していない
CGI習熟度:beginner

回答者 しあわせのツボ  [削除]  投稿日 2003/12/25(木) 18:33:53
「エラーになります」だけでは状況がわかりません。
何をどうしたらどうなったのか、できるだけ詳しく書いてください。
●エラーを起こすのはCGIですか、それともJavaScriptですか?
●スクリプトをどのようにprintしていますか?

たぶん"ダブルクォート"をエスケープしてないというパターンだとは思いますが…
質問者 鶴太郎  [削除]  投稿日 2003/12/25(木) 21:15:27
お世話になってます、
右クリックのジャバスクリプトを挿入するとサーバーが見つからないと言うエラーが出ます。
設置URLは http://horie213.kir.jp/Webmail/webmail_e.html です。
ジャバスクリプトを削除しますと正常に動きスクリプトを設定しますとエラーが発生します、また別な右クリック禁止ジャバスクリプトを設定しますと今度はCGIエラーとなってしまいます。


●スクリプトをどのようにprintしていますか?
現在のジャバスクリプトは。
<HTML>
<HEAD>
<script language="JavaScript">
<!--

function notes(eve){
    if(document.all){
        if(event.button == 2){
            alert("右クリック禁止!");
            return false;
        }
    }
    if(document.layers){
        if(eve.which == 3){
            alert("右クリック禁止!");
            return false;
        }
    }
}
if(document.layers)document.captureEvents(Event.MOUSEDOWN);
document.onmousedown=notes;
//-->
</script>
</head>
<body>
</body>
</html>

上記のジャバスクリプトを設置してます。



また下記の内容に付いて判らないので宜しく指導出来れば有り難いのですが宜しくお願いします。
※たぶん"ダブルクォート"をエスケープしてないというパターンだとは思いますが…

宜しくお願いします。

鶴太郎









回答者 しあわせのツボ  [削除]  投稿日 2003/12/26(金) 11:29:16
「どのようなスクリプトを」ではなく「どのようにスクリプトを」入れているかが知りたいのです。
CGIの中に素で書いても当然エラーになるので、print文なり何なりで括っていると思うのですが…。
質問者 鶴太郎  [削除]  投稿日 2003/12/26(金) 23:42:43
お世話になってます、
ジャバ・スクリプト文法を入れる場所とタグを変えて見ましたら動作し確認できました。
ご心配お掛けしまして申し訳有りませんでした、また不具合が発生した場合指導を宜しくお願いします。

返信(回答)する

 


Web裏技