メイン コーダーズルーム【スクリプト系】 ExternalInterface.addCallbackで登録したメソッドをIEでコールできない | 投稿するにはまず登録を |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
misshiki | Åê¹ÆNo.49488 投稿日時: 2012-10-30 22:28 |
Bak@Fla名人 居住地: 山奥(ガチで) 投稿: 108
使用環境:
WinXP SP1,FLASH MX2004 ADOBE FLASH PLAYER 9 IE6,FireFox1.5,OPERA9.01 |
ExternalInterface.addCallbackで登録したメソッドをIEでコールできない お世話になります。
掲題のとおり、IE9にてExternalInterface.addCallbackで登録したメソッドをJavaScript側からコールすると、 「そのようなプロパティまたはメソッドをサポートしていません。」という旨のエラーとなってしまいます。 いろいろ試してみた結果、呼び出すJavaScriptが存在するHTMLのDOCTYPE宣言を除去すると、 正常に動作することがわかったのですが、いまひとつ釈然としません。 IE9ではDOCTYPE宣言とExternalInterfaceは相いれないものなのでしょうか?ご教授いただければ幸いです。 ちなみに動作は下記URLにてご確認いただけます。 DOCTYPEなし DOCTYPEあり また、Flash側のExternalInterface関連のコードの抜粋は以下のとおりです。
以上、よろしくお願いいたします。 |
misshiki | Åê¹ÆNo.49491 投稿日時: 2012-10-31 1:36 |
Bak@Fla名人 居住地: 山奥(ガチで) 投稿: 108
使用環境:
WinXP SP1,FLASH MX2004 ADOBE FLASH PLAYER 9 IE6,FireFox1.5,OPERA9.01 |
Re: ExternalInterface.addCallbackで登録したメソッドをIEでコールできない 自己解決したので、一応原因を投稿しておきます。
結論から言えば、IE9の仕様変更が原因でした。 OBJECT Fallback Is Included in DOM and Matched by window[name] 上記の仕様変更により、IE9ではJavaScriptでSWFを正しく指定できていなかったことが原因でした。 SWFを指定するスクリプトはAdobeのサンプルを流用していたため、まさかそっちに原因があるとは思い至りませんでした。 なんとか解決に至りましたので、本件は結了とさせていただきます。 |
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |
投稿するにはまず登録を | |