• ベストアンサー

ブラウザごとに違うとは思いますが・・・

今、ウェブ仕様のソフトウェアを作っているのですが、ほぼ完成したのでブラウザごとに動くか試験をすることにしました。 とりあえず、Firefox、Netscape、Lunascape、Operaをダウンロード、ソフトウェアを実行してみました。 結果は、Lunascape以外は途中で実行されないというものでした。 具体的に言いますと、このソフトウェアでは  0.フレームAでカテゴリを選択、フレームBに表示  1.フレームBにて、自分に当てはまる項目をチェックボックスでチェック  2.それぞれに割り当てられている数値の合計をフレームAに送信  3.作業がすべて終了後、フレームBに『結果』を表示  4.フレームAにある数値をフレームBへ送信  5.『結果』のプログラムにより、数値を加工・表示 というもので、今回問題になっているのは4、5です。 開発言語はHTMLとJavaScript、開発で使用したブラウザはIEです。 プログラムの問題というより、ブラウザの設定に問題があると思います (少なくとも2はうまく行っているので)。 どうかよろしくお願いします。

noname#33727
noname#33727

質問者が選んだベストアンサー

  • ベストアンサー
noname#23734
noname#23734
回答No.6

訂正です onLoadだからdocument.body.formじゃなくてwindow.formですよね。 だから引数をthis.document.formにすれば良いじゃないですかね。

noname#33727
質問者

お礼

ありがとうございます。動きました!

その他の回答 (5)

noname#23734
noname#23734
回答No.5

良く解りませんが、 <body onLoad="check(this.form)"> ここのthis.formっておかしくないですか? document.body.form? 普通はdocument.formじゃないでしょうか。 IEってこれで良いのでしょうかね。 alert(tf)でundefinedを確認できませんかね。

  • MAN_MA_RUI
  • ベストアンサー率41% (426/1024)
回答No.4

訂正: ○また、具体的な例を挙げるならばMimeタイプ取得のオブジェクトではIEだけ非対応といったケースも時折見られます。 ×また、Mimeタイプ取得のオブジェクトではIEだけ非対応といったケースも時折見られます。

noname#33727
質問者

補足

少々遅くなってしまいましたが、以下が問題のプログラム(一部)です。 フレームA:main.html(固定)  <body><form name="form" method="post" target="フレームA" action="result.html"> <a href="select1.html" target="フレームB">春</a><input type="text" name="spring"> <a href="select2.html" target="フレームB">秋</a><input type="text" name="fall">  <input type="submit" value="計算"> </form></body> フレームB:select1.html(0~2、select2.htmlも同様) <head><script type= "text/javascript" language="JavaScript" src = "select.js"></script></head>  <body><form name="form" method="post" target="フレームA" action="main.html"> <input type="checkbox" name="a1">1月 <!--- ↑のようなものが数行つづくので省略 --->  <input type="submit" value="送信" onClick="count(this.form)"> </form></body> フレームB:select.js(select1.htmlのスクリプト)  function count(tf) { var total1 = 0; if( tf.a1.checked == 1 ) total += 1; <!--- 以下省略 ---> parent.フレームA.document.form.spring == total; } フレームB:result.html(結果画面) <head><script type= "text/javascript" language="JavaScript" src = "result.js"></script></head> <body onLoad="check(this.form)"><form name="form"> 春:<input type="text" name="spring"> 秋:<input type="text" name="fall"> 春-秋:<input type="text" name="minus"> </form></body> フレームB:result.js(結果画面のスクリプト)  function check(tf) { spring = parent.フレームA.document.form.spring.value; fall = parent.フレームB.document.form.fall.value; minus = spring - fall; tf.spring.value = spring; tf.fall.value = fall; tf.minus.value = minus; } ・・・という感じです(実際のものとは違いますが)。 申し訳ありませんが、よろしくお願いします。

  • MAN_MA_RUI
  • ベストアンサー率41% (426/1024)
回答No.3

IEだけ不具合を起こすと言うケースもあります。 例えば、外部スクリプト読み込みでページのエンコードとスクリプトファイルのエンコードが違うとIEではエラーが起きますが、他の環境ではエラーになりません。 また、Mimeタイプ取得のオブジェクトではIEだけ非対応といったケースも時折見られます。 …何が言いたいかと言うと、まぁ要はソースを見なければ分からない、と。

  • ron3
  • ベストアンサー率35% (7/20)
回答No.2

いまいち送信というのがわかってないのですが、 この送信は、BのフレームからPOSTして、Aのフレーム内容を書き直す という意味でしょうか?それともAのフレームのinputタグなりのフィールドに、値をセットするという意味でしょうか? とりあえず、No1の方もおっしゃってるとおり、javascriptとHTMLの該当箇所のソースを見せてください。

  • 345itati
  • ベストアンサー率48% (795/1639)
回答No.1

HTMLとjavascript使用、で、各ブラウザでjavascriptの使用が許可されている、そして同じPCで確認したのなら、ブラウザ側の問題というより、ソースの記述自体の問題の可能性の方が高いです。 Lunascapeで動いたのは、IEのエンジンをそのまま使用する形だからでしょう。(LunascapeはレンダリングエンジンはIEそのものなので、これでバグチェックをするのはあまり意味が無いと思います。。。 FirefoxやOperaには、javascriptの記述エラーを表示するエラーコンソールがありますが、そちらにはエラーは何も表示されていませんか? ソース(特にjavascript)を示して頂ければ、解決の糸口がつかめそうですが。

noname#33727
質問者

お礼

早速のご解答、ありがとうございます。 そうなんですか?てっきりセキュリティなどの面かと思いました。 エラーコンソールも知りませんでした。IEのように『スクリプトエラーごとに通知』があるのかと探しては見たんですが・・・。 今試したところ、HTML内でJavaScriptのfunctionに『this.form』を送信、functionないでは『tf』としたことに文句を言っているようなんですが・・・。 この様な変換は無効になってしまうんでしょうか?

noname#33727
質問者

補足

※お礼を書いた後の内容になります。 思い直し確認してみたところ、(質問内にあるソフトウェアの説明の)2のJavaScriptでも『this.form』→『tf』を使っていました。 どうしてこの様なことがおきてしまったんでしょう?

関連するQ&A

  • 毎週、月曜日の朝PCのブラウザがが固まりネットに接続不能になります。

    毎週、月曜日の朝PCのブラウザがが固まりネットに接続不能になります。 PCはWindowsXPで、IE8とLunascape6を併用してますがメインで使っているのはLunascape6です。 メールソフトはOutlook2007を使ってます。 朝、電源を入れメールチェックするのですがメール内のリンクをクリックし何通かのメールチェック中に突然とカーソルが砂時計になりそのままブラウザが反応しなくなる状態です。 メールも画像付きのメールは画像表示されてませんので通信が遮断されているようです。 ブラウザもIE8、Luna6双方だめです。 再起動しても直らず、いつもIE8をアンインストールすると直ります。その後再インストールするのですが、次の週の月曜日の朝が来るまでは普通に問題なく使えます。 月曜の朝に実行される何かの更新プログラムかなとも思いましたが、それが何かも解らない状態です。 何が原因かお解りになる方おりましたら解決法をご指導お願いします。

  • 表示中のブラウザ情報を他のブラウザで処理する。

    表示されているブラウザの情報を、もう一つブラウザを開き処理を行いたい。 (表示中のブラウザのHTMLを、もう一つのブラウザで使用したい) よい方法はありますか。 表示中のブラウザA 処理をしたいブラウザBとします。 ・ブラウザAでは処理を追加することはできず、拡張(アドイン)も使用できない仕様です。ただ表示のみ可能です。(Webサーバには手を加えられません) ・ブラウザBにてブラウザAのHTMLを加工して表示する。 ブラウザBはWebサーバにアクセスさせたくない。 ・クッキーを使うことは避けたい。 ・Tempファイルを作成し操作することは可能。 ・1台のPC上の処理です。 ・Administratorです。 自分でも考え検索もしてみたのですが、専門分野で無いので上手く検索結果も得られません。 お願いします。

    • ベストアンサー
    • HTML
  • ブラウザでの印刷機能について

    IE以外のブラウザを使用したいと思ったのですが、IEだとCanon等で「Easy-WebPront」というソフトが使えるため、A4の紙にきれいに収まるのですが、「Lunascape」や「Sleipnir」だと表示されているwebページを印刷するときに、右端が切れてしまって、少々使いづらい面もあって...。 やはり、「Lunascape」や「Sleipnir」では無理なのでしょうか?

  • 複数のCGIにデータを渡したい

    現在、2分割のフレームでA.cgi(frame1)とB.cgi(frame2)を表示させています。 <form method=post action="A.cgi" target="frame1"> <input type=submit value="name"> </FORM> でA.cgiにnameが送信された結果がframe1に表示されますが、この1つのボタンクリックで同時にnameをB.cgiにも送信し、結果をframe2に表示させるにはどうしたらいいでしょうか?

    • ベストアンサー
    • CGI
  • ポータブルブラウザとランチャーについて教えてください。

    USBメモリにポータブルブラウザとランチャーを入れて使用しています。以前はFirefox Portableを入れていましたが起動に時間がかかるためLunascape4 Pocketに変えて使用後にメニューバーのファイルから終了した後、USBメモリを取り外し(UnplugDrive Portable )を実行したらLunascape4 Pocket使用中のため取り外しができませんと表示されます。もしかしてランチャーと合性が悪いのでしょうか?ランチャーはPstartを使っていますが起動が早くて使い勝手がよいおすすめのブラウザとランチャーがあれば教えてください。差し支えなかったらAutorun.inの書き方も教えていただけたら助かります。 

  • ポータブルブラウザとランチャーについて

    USBメモリにポータブルブラウザとランチャーを入れて使用しています。以前はFirefox Portableを入れていましたが起動に時間がかかるためLunascape4 Pocketに変えて使用後にメニューバーのファイルから終了した後、USBメモリを取り外し(UnplugDrive Portable )を実行したらLunascape4 Pocket使用中のため取り外しができませんと表示されます。もしかしてランチャーと合性が悪いのでしょうか?ちなみに以前はあやめやClock Launcherを使っていましたが取り外し時にエラーが出たり使い勝手が悪いので今はPstartを使っています。それからポータブルブラウザも色々使ってみましたが起動が早く使い勝手がよいおすすめのブラウザがあれば教えてください。

  • 外部コマンドの実行と表示

    php、OSはopensuseで開発しているのですが 特定のファイルを gccコマンドを実行して コンパイル結果を ブラウザに返し コンパイル成功の場合は ファイルを 実行といった流れのプログラムを 作ろうとしているのですが ブラウザに表示させる方法が 分かりません。 どういったプログラムをしたら良いのでしょうか? 初心者なので 出来ましたら細かくご指導ご回答お願いいたします。

    • 締切済み
    • PHP
  • 海外のソフトウェアを輸入・販売

    並行輸入、独占禁止法、等、法律に疎いため、大変恐縮ですが質問させてください。 株式会社Aが日本での総代理店契約を海外のソフトウェア開発メーカーと結んでいる場合、その契約期間中に 1.株式会社Bがその海外のソフトウェア開発メーカーと代理店契約を結んで、日本で販売するのは法律上問題あるのでしょうか? 2.その海外のソフトウェア開発メーカーがAのメンテナンス(お客からの苦情)や販売実績に問題があることを理由に、総代理店契約をAの許可無くBと結んでよいのでしょうか? ※販売と言っても、海外のソフトウェア開発メーカーからメール送信されたexe(実行ファイル)とライセンスをお客様に売っているだけです。 また、輸入の際にブローカー等は間に挟まっていません。 宜しくお願いいたします。

  • C言語の外部からの変数取得方法について

     現在C言語の勉強を始めました。C言語を使用してプログラムを作成しています。コマンドプロンプトで、プログラムを実行する際に、「a = 」というようにたずねて、aの数値を取得して、プログラムで計算できるようにしたいのですが、getsではうまくいきませんでした。 例としては以下のようにしたいのです。 【コマンドプロンプトにて】 a + b = a =  //5と入力 b = //3と入力 計算結果は8です。 どのようにしたらプログラム実行中に数値を取得できますか。

  • PDFファイルをブラウザで表示する方法は?

    HTMLファイル製作に関する質問です。PDFファイルをブラウザ内で見せるようにしたいのですが、Aさんのブラウザでは、PDFファイルがブラウザで見れますが、Bさんのブラウザでは、PDFファイルがブラウザではなくAdobe Acrobat Readerで開きます。AさんもBさんもAcrobat Reader の編集→環境設定→インターネット→ブラウザで表示するにはチェックが入っています。ブラウザで表示するための他に考えられる要素はなんでしょうか?