Flash / JavaScript Integration Kit の使い方
Flash / JavaScript Integration Kit
JavaScript と Flash でデータとかやり取りとかできそうなヤツ。
Flash / JavaScript Integration Kit の使い方↓
HTML から swf 内の function を実行する方法
■ Flash 作業━━━━━━━━━━━━━━━━━━━━━━━━
1. Flash の中に HTML から実行する functon を作ります。
2. Flash の作業デレクトリ(Flaファイルと同じフォルダ)に
source > flash > actionscriptフォルダの中の「comフォルダ」を中身ごとコピーします。
3. fla ファイルに com フォルダの中のクラスファイルを読み込む ActionScript を追加します。
import com.macromedia.javascript.JavaScriptProxy;
var proxy:JavaScriptProxy = new JavaScriptProxy(_root.lcId, this);
4.パブリッシュして swf を書き出します。
※2の com フォルダはサイト公開時には必要ありません。
■ HTML 作業━━━━━━━━━━━━━━━━━━━━━━━━
1. Web ディレクトリに「 installation フォルダ」の中の
「 JavaScriptFlashGateway.js 」と「 JavascriptFlashGateway.swf 」を追加します。
2. HTML に Javascript を追加します。
3. SWF を表示する JavaScript を追加します。
4. 以上で Javascript から Flash 内に作った function を実行できると思います。
実行
3E4D - htmlからswf内のメソッドの呼び出し方
JavaScript と Flash でデータとかやり取りとかできそうなヤツ。
Flash / JavaScript Integration Kit の使い方↓
HTML から swf 内の function を実行する方法
■ Flash 作業━━━━━━━━━━━━━━━━━━━━━━━━
1. Flash の中に HTML から実行する functon を作ります。
2. Flash の作業デレクトリ(Flaファイルと同じフォルダ)に
source > flash > actionscriptフォルダの中の「comフォルダ」を中身ごとコピーします。
3. fla ファイルに com フォルダの中のクラスファイルを読み込む ActionScript を追加します。
var proxy:JavaScriptProxy = new JavaScriptProxy(_root.lcId, this);
4.パブリッシュして swf を書き出します。
※2の com フォルダはサイト公開時には必要ありません。
■ HTML 作業━━━━━━━━━━━━━━━━━━━━━━━━
1. Web ディレクトリに「 installation フォルダ」の中の
「 JavaScriptFlashGateway.js 」と「 JavascriptFlashGateway.swf 」を追加します。
2. HTML に Javascript を追加します。
3. SWF を表示する JavaScript を追加します。
4. 以上で Javascript から Flash 内に作った function を実行できると思います。
3E4D - htmlからswf内のメソッドの呼び出し方
投稿日 : 2005年06月26日 - yoshiweb - カテゴリ: Flash
コメント
投稿者 : あじゃ
2005年09月01日 09時43分07秒
投稿者 : yoshiweb
こんにちは、あじゃさん。
Windows 版の Flash MX 2004 は asファイルが BOM つきの UTF-8 で保存されてないとダメらしいです。
com フォルダの中の JavaScriptProxy.as と JavaScriptSerializer.as を BOM つきの UTF-8 で保存できるテキストエディタや SEPY などの ActionScript エディタで保存しなおしてはどうでしょう。
SEPY*
http://www.sephiroth.it/pyt...
日本語化ファイル
http://www.yk.rim.or.jp/~su...
BOM について
http://www.atmarkit.co.jp/a...
Windows 版の Flash MX 2004 は asファイルが BOM つきの UTF-8 で保存されてないとダメらしいです。
com フォルダの中の JavaScriptProxy.as と JavaScriptSerializer.as を BOM つきの UTF-8 で保存できるテキストエディタや SEPY などの ActionScript エディタで保存しなおしてはどうでしょう。
SEPY*
http://www.sephiroth.it/pyt...
日本語化ファイル
http://www.yk.rim.or.jp/~su...
BOM について
http://www.atmarkit.co.jp/a...
2005年09月03日 19時52分00秒
投稿者 : yoshiweb
日本語は送れないのかな?変な数字になった...。
2005年09月05日 11時34分45秒
投稿者 : yoshiweb
2006年02月17日 16時58分58秒
投稿者 : ゴン太
RSSリーダーのようなものを作成しようと思い、flashのXMLオブジェクトでrssファイルを読込み・解析した結果を、htmlに記述したjavaScriptの関数に引数として渡したのですが、この場合は上記の対策では日本語がうまく渡りませんでした。
以下、自分で試した結果です。
1. 読込むrss(xmlファイル)とhtmlのエンコードをUTF-8とし、文字列を渡す前に、Flash側でストリングをescape()で、URLエンコードしてやれば、Netscape 7とFirefoxではOK。IE 6、Operaでは文字化けする。
2. 読込むrss(xmlファイル)とhtmlのエンコードをUTF-8あるいはshift-JISとし、文字列を渡す前に、URLエンコードしないでそのままストリングを送った場合、IE 6のみOK。FirefoxとNetscapeではjavaScriptが呼ばれない。Operaでは文字化け。
javaScirptは苦手なので、できればActionScriptをメインに使って、Ajaxっぽいことをしたかったのですが・・・。どなたか、回避方法をご存知でしたら、ご教授お願いします。
以下、自分で試した結果です。
1. 読込むrss(xmlファイル)とhtmlのエンコードをUTF-8とし、文字列を渡す前に、Flash側でストリングをescape()で、URLエンコードしてやれば、Netscape 7とFirefoxではOK。IE 6、Operaでは文字化けする。
2. 読込むrss(xmlファイル)とhtmlのエンコードをUTF-8あるいはshift-JISとし、文字列を渡す前に、URLエンコードしないでそのままストリングを送った場合、IE 6のみOK。FirefoxとNetscapeではjavaScriptが呼ばれない。Operaでは文字化け。
javaScirptは苦手なので、できればActionScriptをメインに使って、Ajaxっぽいことをしたかったのですが・・・。どなたか、回避方法をご存知でしたら、ご教授お願いします。
2006年02月23日 22時25分56秒
投稿者 : niku
初めまして。ほとんど情報がないのでここで質問させていただきます。
JavaScript Integration Kitを使って、
1:javascriptでflash呼び出し
2:flashからhtmlファイルを呼び出したものを、その後javascript(innerhtml)に変数としてわたし呼び出し→htmlに表示される
とajaxライクな事をしようと思っていますが、
呼び出すhtmlが大きいと(と言っても数十行)、javascript側で受信完了せずにinnerhtmlをしようとしてるのか表示されません(小さいとOK)。ajaxでは「readyState」ステータスで受信完了を監視していますが、このツールではどういう風にすればよいのでしょうか?どなたかご教授お願いいたします。
JavaScript Integration Kitを使って、
1:javascriptでflash呼び出し
2:flashからhtmlファイルを呼び出したものを、その後javascript(innerhtml)に変数としてわたし呼び出し→htmlに表示される
とajaxライクな事をしようと思っていますが、
呼び出すhtmlが大きいと(と言っても数十行)、javascript側で受信完了せずにinnerhtmlをしようとしてるのか表示されません(小さいとOK)。ajaxでは「readyState」ステータスで受信完了を監視していますが、このツールではどういう風にすればよいのでしょうか?どなたかご教授お願いいたします。
2006年05月20日 07時56分30秒
投稿者 : niku
>初めまして。ほとんど情報がないのでここで・・・
すみません上記の書き込みは無視してください。(削除してもらってもかまいません)全く見当違いなことを書き込んでしまいました。誠に申し訳ございません
すみません上記の書き込みは無視してください。(削除してもらってもかまいません)全く見当違いなことを書き込んでしまいました。誠に申し訳ございません
2006年05月22日 12時20分03秒
投稿者 : yoshiweb
>ゴン太さん
返事が遅くなってしまいすみません。JavaScirptはあまり得意な方ではないのでわかりませんでした。引き続きわかる方がいましたらコメントよろしくお願いします。
>nikuさん
実はJavaScript Integration Kitをあまり使い込んでいないので詳しくないのですが getURL()でJavaScriptを実行するときに文字数が多いと実行されないのと同じ状況かな?と思っています。検証しないまま答えているので違うかもしれませんが...。
http://www.adobe.com/jp/sup...
Flash 8だったらExternalInterfaceクラスで実現できるかも。
返事が遅くなってしまいすみません。JavaScirptはあまり得意な方ではないのでわかりませんでした。引き続きわかる方がいましたらコメントよろしくお願いします。
>nikuさん
実はJavaScript Integration Kitをあまり使い込んでいないので詳しくないのですが getURL()でJavaScriptを実行するときに文字数が多いと実行されないのと同じ状況かな?と思っています。検証しないまま答えているので違うかもしれませんが...。
http://www.adobe.com/jp/sup...
Flash 8だったらExternalInterfaceクラスで実現できるかも。
2006年05月24日 18時47分25秒
投稿者 : niku(食いたい」・・)
>yoshiweb様
返信ありがとうございます。
「getURL()でJavaScriptを実行するときに文字数が多いと・・」そのとおりです。このことはマルチポスト(マナー違反でごめんなさい)で、制限があるようでした。
「ExternalInterfaceクラス」の情報ありがとうございました。試したところ、きちんと動いた・・・ような動かないような・・・(IE×でFireFox○)(;。;)IEで何で動かないんだろうと悩みまくっています。flashProxy.call(kitの関数)でflashの関数内のExternalInterface.call(javascript、・・)を呼び出しておりますが、上記の通りIE×FF○です。
解決いたしましたら情報としてまた書き込みさせていただきます。
(目指しているところは、getUrlやproxy.callの「カチャ」音なしでinnerHtml(大きめファイル)を実現させようとしています。)
返信ありがとうございます。
「getURL()でJavaScriptを実行するときに文字数が多いと・・」そのとおりです。このことはマルチポスト(マナー違反でごめんなさい)で、制限があるようでした。
「ExternalInterfaceクラス」の情報ありがとうございました。試したところ、きちんと動いた・・・ような動かないような・・・(IE×でFireFox○)(;。;)IEで何で動かないんだろうと悩みまくっています。flashProxy.call(kitの関数)でflashの関数内のExternalInterface.call(javascript、・・)を呼び出しておりますが、上記の通りIE×FF○です。
解決いたしましたら情報としてまた書き込みさせていただきます。
(目指しているところは、getUrlやproxy.callの「カチャ」音なしでinnerHtml(大きめファイル)を実現させようとしています。)
2006年05月27日 11時03分06秒
投稿者 : niku(食った・・うまうま)
↑再び勘違い(;^_^A アセアセ…
「ExternalInterfaceクラス」で何とかなりそうです。
それと同時に「JavaScript Integration Kit 」の存在意義が謎に・・・
[ユーザーサイド]html(PHP)-javascript-flash(ExternalInterface)-php-[サーバサイド(Mysqlなど)]
とかなりシームレス?(シームって何?ォィw)にでき、色々応用できそうです♪重ね重ね情報のご教授ありがとうございました
「ExternalInterfaceクラス」で何とかなりそうです。
それと同時に「JavaScript Integration Kit 」の存在意義が謎に・・・
[ユーザーサイド]html(PHP)-javascript-flash(ExternalInterface)-php-[サーバサイド(Mysqlなど)]
とかなりシームレス?(シームって何?ォィw)にでき、色々応用できそうです♪重ね重ね情報のご教授ありがとうございました
2006年05月27日 22時42分06秒
投稿者 : niku(眠い(-_ゞゴシゴシ
とおもったら、今度はFireFoxで反応すらしない・・(;。;)←愚痴です
(ちなみにFlash付属のサンプルでも起動しませんでした~)
(ちなみにFlash付属のサンプルでも起動しませんでした~)
2006年05月27日 23時16分28秒
投稿者 : MAKKY
はじめまして。Flash初心者です。
上記のFlash 作業では、HTMLから呼び出される関数は .fla ファイルに、以下のように記述すればよいのでしょうか?
function showMessage2(val){
t1 = val;
}
#変数t1は、ダイナミックテキストです。
上記のFlash 作業では、HTMLから呼び出される関数は .fla ファイルに、以下のように記述すればよいのでしょうか?
function showMessage2(val){
t1 = val;
}
#変数t1は、ダイナミックテキストです。
2006年10月24日 18時39分25秒
投稿者 : yoshiweb
>MAKKYさん
返事が遅くなってすみません。MAKKYさんの書き方で大丈夫だと思います。
※私が書いたHTMLに一部、無駄なスペースが入っていたので削除しました。m(_ _)m
返事が遅くなってすみません。MAKKYさんの書き方で大丈夫だと思います。
※私が書いたHTMLに一部、無駄なスペースが入っていたので削除しました。m(_ _)m
2006年10月31日 12時16分08秒
投稿者 : YuKI
初めまして。質問があるのです。
お暇なときに答えてくださったら嬉しいです。
swfファイルをパブリッシュする際に以下の2つのエラーが出ます。
mac OSXのflash2004MXを使用していますが、それが関係しているのでしょうか?
JavaScriptProxy.as: 行 108:controller' という名前のプロパティはありません。
receiving_lc.controller = this;
JavaScriptProxy.as: 行 110:callFlash' という名前のプロパティはありません。
receiving_lc.callFlash = callFlash;
お暇なときに答えてくださったら嬉しいです。
swfファイルをパブリッシュする際に以下の2つのエラーが出ます。
mac OSXのflash2004MXを使用していますが、それが関係しているのでしょうか?
JavaScriptProxy.as: 行 108:controller' という名前のプロパティはありません。
receiving_lc.controller = this;
JavaScriptProxy.as: 行 110:callFlash' という名前のプロパティはありません。
receiving_lc.callFlash = callFlash;
2007年01月04日 23時36分35秒
投稿者 : yoshiweb
はじめまして、YuKIさん。
Flash / JavaScript Integration Kit は Flash MX 2004のころに開発されたものだったと思いますので、2004でも大丈夫なハズですが、いま試せる環境が手元にないのでちょっとわかりません。
引き続き、わかる方がいましたら & 解決したらYuKIさん、書き込みよろしくお願いします!!
Flash / JavaScript Integration Kit は Flash MX 2004のころに開発されたものだったと思いますので、2004でも大丈夫なハズですが、いま試せる環境が手元にないのでちょっとわかりません。
引き続き、わかる方がいましたら & 解決したらYuKIさん、書き込みよろしくお願いします!!
2007年01月05日 16時32分49秒
投稿者 : buy cialis online with a prescription
When I initially commented I clicked the "Notify me when new comments are added" checkbox and now each time a comment is added I get
three e-mails with the same comment. Is there any way
you can remove me from that service? Bless you!
three e-mails with the same comment. Is there any way
you can remove me from that service? Bless you!
2023年12月22日 21時03分48秒
Flash MX が Pro版 でないのが原因なのか?
・Using the Macromedia Flash / JavaScript Integration Kit
http://www.communitymx.com/...