FlashとJavaScriptの連携について

このQ&Aのポイント
  • FlashとHTML内のJavaScriptの連携方法をお教えください。
  • HTML内に設置したFlash(SWFファイル)のボタンを押すと別ウインドウのHTMLページが開く方法を教えてください。
  • 現在ホームページを制作していて、FlashとHTML内のJavaScriptとの連携が上手くいかない状況です。どのようにすれば連携ができるのか教えてください。
回答を見る
  • ベストアンサー

FlashとJavaScriptの連携について。

HTML内に設置したFlash(SWFファイル)のボタンを押すと、別ウインドウのHTMLページが開く方法について。 現在ホームページを制作していますが、FlashとHTML内のJavaScriptとの連携が上手く出来ないので質問します。 問題のスクリプト・タグを記載します。 -----以下、HTML(index.html)内に記述したJavaScript----- <script type="text/javascript"> function winopen(top.html,1024,768{window.open(top.html,"name","toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=0" , Width=" + 1024 + ",Height=" + 768); </script> -----ここまで----- -----以下、Flash(SWFファイル)のボタンに対して記述したActionScript----- on (release) { getURL("javascript:winopen("top.html",1024,768);", "_blank"); } -----ここまで----- この状態で、HTM内にobjectタグを用いて設置したFlash(SWFファイル)のボタンが上手く動作してくれません。 希望する動作としては「index.htmlに設置されたFlash(SWFファイル)のボタンを押す」→「別ウインドウ(1024×768のサイズ、各ツールバー等非表示、スクロールバーのみ許可)が立ち上がりtop.htmlが表示される」という流れです。 ※移動先のtop.htmlには、特にJavaScriptの記述はありません。また、top.htmlはHTML内にFlash(SWFファイル)を設置した見た目だけフルFlashのページになります。 ご不足の記述等があれば、すぐに補足追加させて頂きます。 ご回答、宜しくお願い致します。

  • Flash
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

JavaScript も ActionScript も,両方とも間違っていますね。 私の推測も入れて書き直します。 ---HTML(index.html)内に記述したJavaScript--------- <script type="text/javascript"> function winopen(P,W,H) { window.open(P, "my_name", "toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=0,width=" + W + ",height=" + H + "\""); } </script> ---ここまで------ ---Flash(SWFファイル)のボタン記述したActionScript----- on (release) { getURL("javascript:winopen('top.html',1024,768);"); } ---ここまで------

koge_nakahiro
質問者

お礼

お返事が遅くなってしまい、申し訳ありませんでした。 お教え頂いた方法を元に書き直してみたところ、何とか動かす事が出来ました! 本当にありがとうございました!

関連するQ&A

  • flashとjavascriptとhtmlの連携で、一瞬白い画面が!

    自作でサイトを作っているのですが、flashを組み込んだところ、「このコントロールをアクティブ化して…」と表示されたため、html内にflashでパブリッシュしたものを書かず、外部のjsファイルから呼び出すというふうにしました。 htmlの<body>タグ内に <script type="text/JavaScript" src="js_file/top.js"></script> と記述して、top.jsの document.open(); document.writeln('<embed src="fla_swf/Top_Flash1.swf" width="800" height="565" type="application/x-shockwave-flash"/>'); document.close(); というのを呼び出して、読み込んでいます。 そこで、今回困っている内容なのですが、リンクをクリックして、同じサイト内にページ移動する際に、一瞬flashの部分が真っ白になってしまいます。また、「戻る」のボタンを押して、ひとつ前のページに戻るときにも、一瞬真っ白になってしまいます。 この一瞬真っ白になる現象はどのようにすれば、修正できるのでしょうか。よろしくお願い致します。 現物があれば、分かりやすいと思いますので、サイトのリンクを載せておきます。 http://yamauti.com

  • Javascriptで起動するときの音の消失

    いつも、このページにはお世話になっています。 FLASHファイルで、別のFLASHファイルをJavascriptで呼び出すときに、音が鳴りません。 ファイル構成は以下のようになってます。 index.html file1.swf index2.html file2.swf 要するにindex.htmlにある、file1.swfから index2.htmlを呼びます。起動は出来ます。しかし、 index2.htmlにあるfile2.swfの音が途中で 切れてしまいます。 index.htmlの呼び出し側をAタグなどをして Javascriptを呼んだ場合は音が鳴ります。 これは何故なんでしょうか? すいません。困っていますよろしくお願いします。 コード↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓ [file1.swf] _root.getURL("JavaScript:void(subOpenWin())"); [index.html] <script language='JavaScript'> <!-- function subOpenWin(){ var reSub = subOpen('index2.html','newOpen',0,0,0,0,1,0,1024,680,0,0); return reSub; } //--> </script>

    • ベストアンサー
    • Flash
  • 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)はすべて同一フォルダ(デスクトップ)です 以上です どうかよろしくお願い致します

  • JavaScriptでFLASHファイルを切り替えるには

    いつもお世話になっています。 3つあるFLASHファイルを、 1.ページ読み込み時にはランダム 2.画像ボタンへのmouseoverで対象に変化 のようにしたいのですが、2が上手く行きません。 flashlist[num]を変化させたところ、ページ全体がオブジェクトだけになってしまいました。 何か良い方法はないでしょうか。 なお、マイクロソフトの月例パッチ(ActiveX)対策で、objectをJavaScriptで書き出しています。 /* HTMLファイルのボタン・FLASH部分 */ <script type="text/javascript" language="javascript" src="flash.js"></script> <img src="button1.gif" mouseover="flashlist(0)" /> <img src="button2.gif" mouseover="flashlist(1)" /> <img src="button3.gif" mouseover="flashlist(2)" /> /* flash.js */ var flashlist = new Array("flash1.swf","flash2.swf","flash3.swf"); var num = Math.floor((Math.random() * 100)) % flashlist.length; document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"  codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" >'); document.write('<param id="movie" value="' + flashlist[num] + '" />'); document.write('<embed src="' + flashlist[num] + '" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash"></embed>') document.write('</object>');

  • javascriptの長いコードをサブルーチン化する方法

    初歩的な質問かもしれませんが <a href="javascript:void(0);" onclick="window.open ('note.htm','_blank','location=no,menubar=no,scrollbars=yes, resizable=yes,status=no,width=200,height=100,top=0,left=0')">※注釈※</a> …というHTMLをたくさんの箇所に挿入したいのですが,これではあまりにも長い ので,該当ファイルのヘッダ内に <head> <SCRIPT language="javascript" type="text/javascript" src="../script/winopen.js"></script> </head> みたいにwinopen.jsとして収め,必要箇所で呼び出したいのですが, (1) winopen.jsファイル内 と (2) HTMLの<body></body>内 には 具体的にどのように記述したらよいものでしょうか?

  • FlashとHTMLの階層が違うために表示できない(と思われる)。

    複数のswfファイルをランダム表示するために、ひとつのswfファイルをベースにして、そこに以下のようなアクションスクリプトを記述することによって動作させることができました。 //1~3の整数の乱数を,変数 ransuu にセット ransuu = Math.floor(Math.random()*13)+1; //ムービー内に ransuu+".swf" をロード this.loadMovie(ransuu+".swf"); しかし、上記のアクションスクリプトは、ベースとなるswfファイルと、それを設置するHTMLと、ランダム表示させるswfファイル群が全て同じ階層にあるということを前提にして書かれているようです。従って、HTMLをひとつ上の階層に設置し、そこからベースとなるswfファイルを設置しても、表示されません。FlashとHTMLの階層が違う場合には、どのように上記のアクションスクリプトを変更すればよいのかを教えてください。

    • ベストアンサー
    • Flash
  • FLASHとJavaScriptの連携について

    FLASHを使用してウェブサイトを作成しています。 Windowsアップデートにより、Flashのまわりに変な枠線が出るようになりましたが、こちらのみなさんのおかげで無事解決(JavaScript使用)しました。 新たな問題が。。。 現在外部javascript(***.js)を本文内で呼び出すというような形態をとっております。(以下参照)   document.write('<EMBED src="menu.swf" ...m/go/getflashplayer"></EMBED>'); このような状態でブラウザ(IE)のセキュリティが高い状態だと何も出ません。 FLASHのみの時は、中身は消えてもFlashがあった場所だけは真っ白になり「あー何かあるな」と観る人に感じられたのですが。 javascriptがオフの時はメッセージを出そうと、ページのトップの一番上に、 <noscript>メッセージ</noscript> と付け加えました。 これでjavascriptがオフの時はメッセージが出るのですが、ブラウザのセキュリティの設定が高で、 [レベルのカスタマイズ]-[スクリプト]-[アクティブスクリプト]を「有効にする」にすると、上記のメッセージは表示されませんが、Flashも表示されないままです。 メニューなどがFlashで作成してあるのですが、それがそのまま上に詰まってしまって、何もなかったかのようになってしまいます。 これはどうしたらいいのでしょうか? Flashだけ、JavaScriptだけならなんとかなりそうなんですが、これらを組み合わせた時はどうしたらいいのでしょうか? もしくは、[ActiveXコントロールとプラグイン]-[ActiveXコントロールとプラグインの実行]で「有効にする」を選択するとFlashが表示されましが、 これをユーザーに「有効にする」にしてください、というメッセージを表示するようにしたらよいのでしょうか? この場合はどのような方法がありますか?

  • JavaScript + FLASH 【overLayFlash】

    http://f-site.org/articles/2006/09/09042615.html 上記ページで紹介されている、むらけんさん制作のoverLayFlash.jsを元に、下記のようなカスタマイズを行いたいのですが、Javascriptがわからず困っています。 (1)onloadを使用し、ページ読み込み時に実行したい (2)FLASH終了後、今度はリンクにより再度表示したい(Replayみたいな感じで・・・。) というカスタマイズを行いたいのですが、(2)の時に、リンクをクリックすると、swfへ飛んでしまい、表示がおかしくなってしまいます。 (2)の時にもレイヤーを使用し、HTMLの上に被せたいのですが、 どうカスタマイズすればいいかわかりません。 どなたかjavascriptに精通してます方ご教授願えませんでしょうか。 苦肉の策として、swfファイル側のFLASHの表示を消すスクリプト、 onMouseDown=function(){ getURL("javascript:void(hideFlash());"); } に、getURL("index.html");を記述すれば、問題ないのですが、 マウスダウン時にリロードされてしまうので、格好が悪い気がします。 うまいことjavascript側で解決できませんでしょうか。 どうぞよろしくお願いいたします。

  • Flashの表示について

    FlashをSWFオブジェクトで表示しています。 回線が遅い場合、Flashが読み込まれる前に一瞬、Flashの表示領域の高さ(CSS)が反映されていない?のか、Flashの下に表示すべき領域がFlashの部分に表示されレイアウトが崩れます。 下記にFlashを表示させる部分に関係のあるHTMLとCSSを記載いたします。 ---------- HTML ---------- ・・・・・・・・・・・・・ <head> <script type='text/javascript' src='js/jquery-1.2.6.min.js'></script> <script type="text/javascript" src="js/jquery.lightbox-0.5.js"></script> <script type="text/javascript" src="js/swfobject.js"></script> </head> <body> ・・・・・・・・・・・・・ ・・・・・・・・・・・・・ <div id="top">・・・・・</div> <div id="flash"></div> <script type="text/javascript"> var flashvars = null; var params = { bgcolor: "#●●●"}; swfobject.embedSWF("movie.swf", "movie", "840", "250", "9.0.0","expressInstall.swf", flashvars, params); </script> <div id="buttom">・・・・</div> ---------- CSS ---------- #flash { width: 840px; height: 250px; } CSSの250pxが効いていないのかFlash領域の高さがない状態で、上のコンテンツ(div id="top">・・・・</div>)のすぐ下にコンテンツ(<div id="buttom">・・・・</div>)が表示されてしまいます。 解決策に関してどのようなことでも良いので教えてください。 よろしくお願いいたします。

  • 難解!Flashの曜日別の画像変更指定

    こんにちは。 ID for WEBLIFEというソフトを使用して WEBサイトのトップページのFLASHを7パターン制作しました。 当初、制作したFLASHをFLASHで読み込みソフト上で曜日指定のスクリプトを付けようかと思っておりましたが、IDで制作したFLASHはプロテクトされているようで読み込む事が出来ません。 javascriptをhtmlに書き込みたいのですが、記述方法が分かりません。 分かる方お願い致します。 現在は毎日深夜0時に手動で更新している状況ですが 来週、ネット環境の無い所に出張するので 更新作業が出来そうにありません。 そうぞよろしくお願い致します。 憂慮している点としては IDで制作したFLASHは一定のフォルダに入れられてしまうので index.htmlと同じ階層の指定は出来そうにありません。 HTMLの記述部分 <!-- idflash("_src/sc765/Site0003/index.swf?_startPage=1","825","320","#ffffff"); //--> 階層 index.html _srcフォルダ ├sc765フォルダ  ├Site0003フォルダ   ├index.html   ├index.xml   ├index.swf   ├p001PlQs.swf(←月曜日のFLASH)   ├p001PlQs.xml   ├p001PlQsフォルダ(←月曜日のFLASH)    ├_t06_2.jpg(←月曜日のFLASHに読み込む画像)    ├motion.swf =================== 分かりにくいとは思いますが何卒よろしくお願いします。  

    • ベストアンサー
    • Flash

専門家に質問してみよう