質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

1702閲覧

デバッグコンソールで front.js:8 Uncaught ReferenceError: browser is not defined 出る。

uepon

総合スコア17

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2018/06/23 21:01

Javasript 初心者です。

今、htmlで下記のようにjavascriptを読み込ませているのですが、
デバッグコンソールに、「front.js:8 Uncaught ReferenceError: browser is not defined
at HTMLDocument.<anonymous>」と出ます。
ソースHtmlは、下記になります。

<!DOCTYPE html> <html> <head><title>岡村ちゃんフアン交流チャット</title> <LINK href="./css_files/default.css" type=text/css rel=stylesheet> <script type="text/javascript" language="JavaScript" src="rpg4.js" ></script> </head> <body> <div class="main2"> <iframe name="main" id="main" src="/11/rpg8.cgi?iframe=main&name=nana&entry=1529784667&file=char0.png" scrolling="no" height="400px" width="100%" frameborder="0" > </iframe> </div> <div class="main2"> <iframe name="input" id="input" src="/11/rpg8.cgi?iframe=input&name=nana&entry=1529784667" scrolling="no" height="220px" width="100%" frameborder="0" > </iframe> </div> </body> </html>

javascript

function DomToolkit() { if(document.all) { // IE Layer.prototype.setVisibility = function(f) { this.div.style.visibility = (f ? "visible" : "hidden"); }; Layer.prototype.getX = function() { return this.div.style.pixelLeft; }; Layer.prototype.getY = function() { return this.div.style.pixelTop; }; Layer.prototype.moveTo = function(x, y) { this.div.style.pixelLeft = x; this.div.style.pixelTop = y; }; Layer.prototype.moveBy = function(dx, dy) { this.div.style.pixelLeft += dx; this.div.style.pixelTop += dy; }; this.getLayer = function(id) { return new Layer(document.all[id]); }; } else if(document.getElementById) { // Mozilla Layer.prototype.setVisibility = function(f) { this.div.style.visibility = (f ? "visible" : "hidden"); }; Layer.prototype.getX = function() { return parseInt(this.div.style.left); }; Layer.prototype.getY = function() { return parseInt(this.div.style.top); }; Layer.prototype.moveTo = function(x, y) { this.div.style.left = x; this.div.style.top = y; }; Layer.prototype.moveBy = function(dx, dy) { this.div.style.left = parseInt(this.div.style.left) + dx; this.div.style.top = parseInt(this.div.style.top) + dy; }; this.getLayer = function(id) { return new Layer(document.getElementById(id)); }; } else { // NN4 Layer.prototype.setVisibility = function(f) { this.div.visibility = (f ? "show" : "hide"); }; Layer.prototype.getX = function() { return this.div.left; }; Layer.prototype.getY = function() { return this.div.top; }; Layer.prototype.moveTo = function(x, y) { this.div.moveTo(x, y); }; Layer.prototype.moveBy = function(dx, dy) { this.div.moveBy(dx, dy); }; this.getLayer = function(id) { var i = arguments.length - 1; var layer = document.layers[arguments[i--]]; while(i >= 0 && layer) { layer = layer.layers[arguments[i--]]; } return new Layer(layer); }; } } function Layer(div) { this.div = div; } var domtool; // DOM依存のツール var left, top, width, height, cell; var mv = 3; var pathinfo; var reloading = false; var ctrlbreak = false; var movingID = null; function init(x, y, w, h, c, t) { domtool = new DomToolkit(); left = x; top = 0; width = w; height = 288; cell = c; pathinfo = location.search.replace(/&px=\d*|&py=\d*|&ctrl=\d*|&?msg=[^&]*/ig, ""); setTimeout("reloadFrame()", t * 1000); setInterval("breakControl()", 60); setTimeout("initEventHandler()", 100); } function initEventHandler() { // 入力フレームの生成待ち if(!parent.input || !parent.input.document || !parent.input.document.cursor || !parent.input.document.cursor.down) { setTimeout("initEventHandler()", 100); return; } if(document.all) { // IE document.onkeypress = handleKeypress; with(parent.input) { document.cursor.left.onmousedown = handleMouseDown; document.cursor.right.onmousedown = handleMouseDown; document.cursor.up.onmousedown = handleMouseDown; document.cursor.down.onmousedown = handleMouseDown; document.onmouseup = handleMouseUp; } } else if(document.getElementById) { // Mozilla document.addEventListener("keypress", handleKeypress, true); with(parent.input) { document.cursor.left.addEventListener("mousedown", handleMouseDown, true); document.cursor.right.addEventListener("mousedown", handleMouseDown, true); document.cursor.up.addEventListener("mousedown", handleMouseDown, true); document.cursor.down.addEventListener("mousedown", handleMouseDown, true); document.addEventListener("mouseup", handleMouseUp, false); } } else { // NN4 document.onkeypress = handleKeypress; document.captureEvents(Event.KEYPRESS); with(parent.input) { document.cursor.left.onmousedown = handleMouseDown; document.cursor.right.onmousedown = handleMouseDown; document.cursor.up.onmousedown = handleMouseDown; document.cursor.down.onmousedown = handleMouseDown; document.onmouseup = handleMouseUp; document.captureEvents(Event.MOUSEUP); } } } function handleKeypress(event) { if(ctrlbreak) { return false; } ctrlbreak = true; if(document.all) { key = window.event.keyCode; } else { key = event.which; } moveChar(String.fromCharCode(key)); } function breakControl() { ctrlbreak = false; } function handleMouseDown(event) { if(movingID != null) { clearInterval(movingID); movingID = null; } if(document.all) { button = parent.input.event.srcElement.name; } else { button = event.target.name; } switch(button) { case 'left': keych = '4'; break; case 'right': keych = '6'; break; case 'up': keych = '8'; break; case 'down': keych = '2'; break; default: keych = '5'; } movingID = setInterval("moveChar('" + keych + "')", 60); } function handleMouseUp(event) { if(movingID != null) { clearInterval(movingID); movingID = null; } } function reloadFrame() { if(reloading) { return; } reloading = true; layer = domtool.getLayer("char0"); x = layer.getX(); y = layer.getY(); location.search = pathinfo + "&px=" + x + "&py=" + y; } function moveChar(key) { if(reloading) { return; } layer = domtool.getLayer("char0"); x = layer.getX(); y = layer.getY(); dx = 0; dy = 0; switch(key) { case '4': // left dx = -mv; if(x + dx < left) { location.search = pathinfo + "&px=" + x + "&py=" + y + "&ctrl=4"; reloading = true; } break; case '6': // right dx = mv; if(x + dx + cell > left + width) { location.search = pathinfo + "&px=" + x + "&py=" + y + "&ctrl=6"; reloading = true; } break; case '8': // up dy = -mv; // if(y + dy < top) { if(y + dy < 0) { location.search = pathinfo + "&px=" + x + "&py=" + y + "&ctrl=8"; reloading = true; } break; case '2': // down dy = mv; // if(y + dy + cell > top + height) { if(y + dy + cell > 288 ) { location.search = pathinfo + "&px=" + x + "&py=" + y + "&ctrl=2"; reloading = true; } break; } if(!reloading) { layer.moveBy(dx, dy); layer2 = domtool.getLayer("balloon0"); layer3 = domtool.getLayer("text0"); if(layer2.div && layer3.div) { layer2.moveBy(dx, dy); layer3.moveBy(dx, dy); } } } function getCharLeft() { return domtool.getLayer("char0").getX(); } function getCharTop() { return domtool.getLayer("char0").getY(); }

エラーが、
front.js:8 Uncaught ReferenceError: browser is not defined
at HTMLDocument.<anonymous> (front.js:8)
(anonymous) @ front.js:8
と、出ます。

申し訳ございませんが、アドバイスの程、宜しくおねがいします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/06/23 21:57

front.jsは何でしょうか。提示のjsにはbrowser という変数は出てきていませんので、browserが出てくるjsをご提示ください。何かのプラグインであれば公式サイトのURLを提示した上で、回収した箇所があれば教えてください
uepon

2018/06/23 22:27

front.jsは、何も宣言していません。rpg4.jsだけ宣言しています。何卒よろしくお願いします。
m.ts10806

2018/06/23 22:32 編集

エラーメッセージはそのfront.jsの8行目にエラー(変数参照エラー)があると言っています。これだけではその変数もどこにもないですし、分かりません。
uepon

2018/06/23 22:55

irframe だからでしょうか?
m.ts10806

2018/06/23 22:59

それすらも、現在の提示内容だけでは分かりません。
guest

回答1

0

自己解決

すみませんでした。
iframeの各画面のところに、

<script> // JavaScriptの開始を確認する(プリントデバッグ用) console.log('JavaScript開始'); // 正常系:WEBページに文字列が出力される document.write('これは正常なJavaScriptコードです'); // 異常系:タイプミスでメソッド名を間違えてしまった document.write('これはエラーの発生するJavaScriptコードです'); // エラーで止まるので、以下のメソッドは実行されることはない(プリントデバッグ用) console.log('JavaScript終了'); </script>

を、挿入すると、エラーが出なくなりました。

投稿2018/06/24 05:20

uepon

総合スコア17

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問