• 締切済み
  • すぐに回答を!

safari、firefoxでjavascript

はじめまして。 flashからjavascriptへ値を飛ばし、それを受け取ったHTML側でjavascriptを実行し、オブジェクトのステージサイズを変更するという物を作りました。 ところがIEでは正常に機能するのですが、safari、firefoxでは上手く機能しません、DOCTYPEを互換モードで宣言すれば機能するのですが、今度はIEで見たときにcssによるレイアウトが崩れてしまいます。 javascriptの書き換えが必要だと言うことは分かったのですが、知識に乏しく何をどう書き変えたらよいのか分りません。 ご教授の程お願い致します。 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script type="text/javascript"> <!-- function newSize(datoX,datoY) { if(document.all && !document.getElementById) { document.all['miFlash'].style.pixelWidth = datoX; document.all['miFlash'].style.pixelHeight = datoY; }else{ document.getElementById('miFlash').style.width = datoX; document.getElementById('miFlash').style.height = datoY; } } //--> </script> </head> <body> <div id="miFlash" style="position:relative; width:1px; height:1px; z-index:1"> <script type="text/javascript"> AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0','width','220','height','100%','align','','src','sidemenu','quality','high','scale','noscale','bgcolor','#FFFFFF','salign','LT','pluginspage','http://www.macromedia.com/go/getflashplayer','movie','sidemenu' ); //end AC code </script> <noscript> <OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="220" HEIGHT="100%" ALIGN=""> <PARAM NAME=movie VALUE="sidemenu.swf"> <PARAM NAME=salign VALUE="LT"> <PARAM NAME=quality VALUE=high> <PARAM NAME=scale VALUE=noscale> <PARAM NAME=bgcolor VALUE=#FFFFFF> <EMBED src="sidemenu.swf" quality=high scale=noscale bgcolor=#FFFFFF WIDTH="220" HEIGHT="100%" SALIGN="LT" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"></EMBED> </OBJECT> </noscript> </div> </body> </html>

共感・応援の気持ちを伝えよう!

  • 回答数1
  • 閲覧数424
  • ありがとう数1

みんなの回答

  • 回答No.1
  • yuu_x
  • ベストアンサー率52% (106/202)

単位が抜けとる。 document.getElementById('miFlash').style.width = datoX + 'px'; # XHTML の場合 CDATA 型になるため、スクリプトのコメントアウト不要。心配なら、外部に置く。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

おかげさまで解決しました! 本当にありがとうございました!!

関連するQ&A

  • JavaScriptでFlashを表示させる方法

    フレーム対策としてJavaScriptを使っているのですが、JavaScriptがオンの時のみ Flashを呼び出すようにするのがうまくいかないので、ご指導お願いします <script type="text/javascript"language="javascript"> <!-- document.open(); document.write(" <OBJECT classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="300" height="400" align="middle">"); document.write("<param name="allowScriptAccess" value="sameDomain" />"); document.write("<param name="movie" value="aaa.swf" />"); document.write("<param name="quality" value="high" />"); document.write("<EMBED src="aaa.swf" quality="high" width="300" height="400" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_ Version=ShockwaveFlash"> </OBJECT>"); document.close(); // --> </script> 初めてJavaScriptを書いてみたのですが、やはりどこかおかしいようでswfファイルが表示されません どこが変なのか教えてください。よろしくお願いします

  • ジャバスクリプトについての質問です。

    はじめまして。ホームページ内に音声を挿入するためにソフトウェアを使用し音声を挿入しましたが、IEではしっかりと起動し、FIREFOXで全く機能しません。 下記にあるジャバスクリプトのコードをHTML内に記述することで上手く動くと説明されたのですが… <script language='JavaScript' src='Project3/ImpactWebAudio.js' type='text/javascript'></script> ここからのコードはImpactWebAudio.jsに書かれているコードになります。 document.write('<object classid="clsid:D27CDB6E-AE6D-11CF-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#3,0,0,0" width="100" height="40">'); document.write('<param name="SRC" value="Project3/ImpactWebAudio.swf">'); document.write('<param name="BGCOLOR" value="#FFFFFF">'); document.write('<param name="wmode" value="transparent" />'); document.write('<embed src="Project3/ImpactWebAudio.swf" wmode="transparent"'); document.write('pluginspage="http://www.macromedia.com/shockwave/download/" type="application/x-shockwave-flash" width="100" height="40" bgcolor="#FFFFFF" >'); document.write('</embed>'); document.write('</object>'); フラッシュで作成されたボタンとすべてのファイルはProject3フォルダの中に入っております。 IEでは反映されましたので、階層などにも間違いはないと思いますが、FIREFOXで上手く機能しないことにはどのような理由があるのでしょうか? ご存知の方がおりましたら、ご指導のほどよろしくお願いします。 (FIREFOXの設定はジャバスクリプト有効になっております。)

  • FLASHを使ったページを保存

    ブラウザ(IEまたはオペラ)で通常のやり方で保存すると swfファイルが保存されず正常に見えないので、ソースでファイルのURLをたしかめ 保存したのですが・・・ それでも、Web上で見るようには表示されないのです。 不思議なことに、IEで「temporary Internet Files」を開き、そこからだと表示されるのに 別の場所に移動するとダメなんです。 しかも移動するときに、ファイル名が「mein.swf」なのに「mein[2].swf」と、勝手に書き換わります。 もちろんもとのファイル名に直してもダメです。 ソース(一部)は <PARAM NAME=movie VALUE="main.swf"> <PARAM NAME=loop VALUE=false> <PARAM NAME=menu VALUE=false> <PARAM NAME=quality VALUE=high> <PARAM NAME=scale VALUE=noscale> <PARAM NAME=salign VALUE=T> <PARAM NAME=bgcolor VALUE=#111111> <EMBED src="main.swf" loop=false menu=false quality=high scale=noscale salign=T bgcolor=#111111 WIDTH="760" HEIGHT="945" NAME="main" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer"> </EMBED> これを見た限りではmain.swfさえ保存すれば見れるハズなのですが・・・ 私の能力ではもはや限界です(--;) 検索し「Get HTML」というソフトがあることを知り、DLしましたが 恥ずかしながら、説明を読んでも使い方が理解できませんでした。 作者さんのサポートページは既に閉鎖されているようですし・・・ このページはもうすぐ消えてしまうので なんとしても保存したいのです・・・ よろしくお願いします。

    • ベストアンサー
    • Flash
  • FLV動画をWEB上にアップロードしたい

    現在、撮影した動画をFLVに変換し、 http://www.stone-home.jp/video/seko_006.html にアップロードしました。これを、 http://www.stone-home.jp/seko/006.html の「動画」に表示させたいのです。 上URLの下記部分を、下URLにコピー&ベーストしたのですが表示されませせん。 <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="580" height="435" id="FLVPlayer"> <param name="movie" value="FLVPlayer_Progressive.swf" /> <param name="salign" value="lt" /> <param name="quality" value="high" /> <param name="scale" value="noscale" /> <param name="FlashVars" value="&MM_ComponentVersion=1&skinName=Corona_Skin_2&streamName=%E9%AB%98%E7%A0%82%E5%B8%82H%E9%82%B8&autoPlay=false&autoRewind=false" /> <embed src="FLVPlayer_Progressive.swf" flashvars="&MM_ComponentVersion=1&skinName=Corona_Skin_2&streamName=%E9%AB%98%E7%A0%82%E5%B8%82H%E9%82%B8&autoPlay=false&autoRewind=false" quality="high" scale="noscale" width="580" height="435" name="FLVPlayer" salign="LT" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> </object> これをコピー&ベーストしたのですが間違えているのでしょうか。正しい方法分かる方おられますでしょうか。

  • FC2ブログ、テンプレートへのフラッシュUP

    違うカテゴリーで質問しましたが、カテゴリー違いの為、 こちらに質問させていただきます。 FC2ブログのヘッド部にフラッシュのバナーを乗せたいと思っています。 窓の杜で見つけた作成ソフトでフラッシュを作成し、 HTMLファイル、swfファイル、imgフォルダが作成され、 ローカルではきちんと表示されています。 ○テンプレートにHTMLで下記のように記入しています。 <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/c … width="220" height="330" id="top" align="middle"> <param name="allowScriptAccess" value="sameDomain" /> <param name="movie" value="top.swf" /> <param name="menu" value="false" /> <param name="quality" value="best" /> <param name="scale" value="noscale" /> <param name="salign" value="lt" /> <param name="bgcolor" value="#FFFFFF" /> <embed src="top.swf" menu="false" quality="best" scale="noscale" salign="lt" bgcolor="#FFFFFF" width="220" height="330" name="top" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object> ○FC2ブログの「ファイルアップロード」にて、作成時に使用した画像と、出来上がったswfファイルをアップロードしています。 FC2ブログはディレクトリ管理ができないので、ディレクトリが違うのかと、HTMLの「top.swf」部分を絶対パスにし、「sameDomain」部分を「always」に変えてみたり、 今日1日中頑張っているのですが、どうしても表示されず、 詳しい方おられましたら、ご教授頂けるとありがたいです。 宜しくお願いいたします。 ブログはこちらで作っています。 http://etoileschoollife.blog.fc2.com/

  • NetScape7でJavaScriptの関数を呼んでくれない

    お世話になります、 JavaScriptで以下のような感じで画面を作成し、 リンクをクリックするとexecJumpUrl()を呼び出し submit()をおこすという処理を行っているのですが、 Netscape7で動かした場合だけ、execJumpUrl()が呼ばれないという現象が起こっております。他のブラウザ(Netscape5や6、IE5.5等)は正常にexecJumpUrl()がよばれております、これはどのようなことが原因でおこっているのでしょうか? ご存知の方宜しくお願いします。 ソースここから----------------------- <script language="JavaScript"> function execJumpUrl(param){ document.Form.param.value = unescape(param); document.Form.action="http://xxxxxx/xxx.html"; document.Form.submit(); } </script> <html> <body> <form name="Form" method="get"> <table width="770"> <tr align="center"> <script language="JavaScript"> var param = escape("TEST"); document.write("<td width=\"30\" height=\"30\"><a href=\"javascript:execJumpUrl('" + param + "')\"><font class=\"jfont10\" size=\"2\" color=\"#FFFFFF\">" + param + "</font></a></td>"); </script> </tr> </table> </form> </body> </html>

  • javascriptでflash表示を添削して下さい

    javascriptでflash表示を添削して下さい 超初心者です javascriptでflash表示する為、色々記述しましたがどうしてもflash表示できません。下記の記述内容を添削していただけませんでしょうか? よろしくお願い致します (js外部ファイル=photo.js) document.write("<object classid='clsid:d27cdb6e-ae6d-11cf96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8.0.0.0' width='130' height='150' align=''> <param name='movie' value='./flash.swf /> <param name='quality' value='high'/> <param name='bgcolor' value='#ffffff'/> <embed src='./flash.swf quality='high' bgcolor='#ffffff' width='130' height='150' align='' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer'/> </object>"); (html内の記述) <script type="text/javascript" src="./photo.js"></script> (特記事項) 外部ファイル(photo.js)、HTML、画像(photo.swf)はすべて同一フォルダ(デスクトップ)です 以上です どうかよろしくお願い致します

  • 外部読み込みにしたところFirefoxで表示されない

    「このコントロールをアクティブ化して使用するにはクリックしてください。」という表示が出るので、調べて出ないようにする対策をしました。するとWIN IE6やWIN opera 8.5では表示できるのですが、Firefox1.5では真っ白になり表示できませんでした。 やり方に原因があるのでしょうか? 私のやり方としては htmlのFLASHを置く箇所に <script language='JavaScript' src='java.js'></script> と記述し、 'java.js'ファイルには document.write("<object classid='clsid:D27CDB6E-AE6D-11cf-96B8-444553540000'") document.write(" codebase='http://download.macromedia.com/pub/shockwave/cabs/") document.write("flash/swflash.cab'") document.write(" width=500 height=590>") document.write("<param name=movie value='flash.swf'>") document.write("<param name=quality value=high>") document.write("<embed src='flash.swf' quality=high ") document.write(" width=500 height=590") document.write(" type='application/x-shockwave-flash' ") document.write("pluginspage='http://www.macromedia.com/go/getflashplayer'>") document.write("</embed>") document.write("</object>") としています。 この辺はあまり詳しくないので、 教えてください。

    • ベストアンサー
    • Flash
  • FLASH動画をSWFでホームページに埋め込みたい Adobe

    いつも adobeの Dream Weaver CS3 を使い、 【挿入】→【メディア】→【Flash Video】のようにして FLVファイルを読み込んでホームページ上に表示しているのですが、 そうすると、動画のFlvファイルと『Clear_Skin_1.swf』『Clear_Skin_3.swf』『FLVPlayer_Progressive.swf』という3つのファイルも自動的に作成されます。 それらをすべてサーバーにアップロードして初めてネット上で見ることができます。 そしてHTMLは以下のようになっています。(ページ下のほうです) <head>~</head>の間にスクリプトが入っています。 そして、ビデオプレイヤーとしてswfを読み込んでいるようです。。 この方法では<object>~</object>タグをただ貼り付けただけでは なにも見えません。 でもyou tube 動画などですと、 例えば以下のようなシンプルなタグで動作しています。 <object width="425" height="344"><param name="movie" value="http://www.youtube.com/v/AQ2jMVG3PgY&hl=ja&fs=1"></param><param name="allowFullScreen" value="true"></param><embed src="http://www.youtube.com/v/AQ2jMVG3PgY&hl=ja&fs=1" type="application/x-shockwave-flash" allowfullscreen="true" width="425" height="344"></embed></object> SWFなどのファイルをサーバー上にアップロードすることは構わないのですが、HTMLタグでは上記のようにシンプルなタグでフラッシュ動画を表示したいのです。 仕事でどうしても必要で試行錯誤しているのですが、やり方がわからずに困っています。 どうかよろしくお願い致します。 AdobeのFLASHというソフトを使用しています。 バージョンはCS3です。 -----------●私の方法でのHTMLタグ●----------------- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>無題ドキュメント</title> <script type="text/javascript"> function MM_CheckFlashVersion(reqVerStr,msg){ with(navigator){ ◆◆中略◆◆ <body onload="MM_CheckFlashVersion('7,0,0,0','このページのコンテンツを表示するには最新バージョンの Adobe Flash Player が必要です。今すぐダウンロードしますか?');"> <script type="text/javascript"> AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0','width','342','height','291','id','FLVPlayer','src','FLVPlayer_Progressive','flashvars','&MM_ComponentVersion=1&skinName=Halo_Skin_3&streamName=●FLVの名前●&autoPlay=false&autoRewind=false','quality','high','scale','noscale','name','FLVPlayer','salign','lt','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','movie','FLVPlayer_Progressive' ); //end AC code </script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="342" height="291" id="FLVPlayer"> <param name="movie" value="FLVPlayer_Progressive.swf" /> <param name="salign" value="lt" /> <param name="quality" value="high" /> <param name="scale" value="noscale" /> <param name="FlashVars" value="&MM_ComponentVersion=1&skinName=Halo_Skin_3&streamName=●FLVの名前●&autoPlay=false&autoRewind=false" /> <embed src="FLVPlayer_Progressive.swf" flashvars="&MM_ComponentVersion=1&skinName=Halo_Skin_3&streamName=●FLVの名前●&autoPlay=false&autoRewind=false" quality="high" scale="noscale" width="342" height="291" name="FLVPlayer" salign="LT" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" /> </object></noscript> </body> </html>

  • firefox3.6でJavaScriptが動かない

    firefox2.xのころからだと思うのですが、 JavaScriptのOnChangeイベントが反応しません。 環境は、少し古いのですが、 ホームページビルダ10です。 ホームページ上へコンボボックスを配置して0~4の値を選択するようにしています。 ソースは以下のようになっています。 ======= <script language="JavaScript"> <!-- function Pent(formobj,pent0) { var v; v = eval(pent0.value); Pent.value = v; } //--> </script> <td valign="middle" height="28" width="13"><select size="1" style="font-size : 24px;" name="pent0" onchange="Pent(form,pent0)"> <option value="0" selected>0</option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> <option value="4">4</option> </select></td> ======= このソースでIE6では問題なく選択できるのですが、 firefoxだとonchangeに反応していないようです。 対処方法をお教えください。