この問題について何か助けていただければ幸いです。
特定のリンクがクリックされたときに AS 機能を実行しようとしていますが、機能しません。次のようにコードを実行しています。
私のオブジェクト コンストラクターには、次の行があります。
ExternalInterface.addCallback("methodName",methodName);
私の関数は(コンストラクターの外で)次のように定義されています。
function methodName()
{
//functioncode here
}
私のhtmlファイル内のJavaScriptコードは次のとおりです。
<script type="text/javascript">
function callExternalInterface() {
thisMovie("swf").methodName();
}
function thisMovie(movieName) {
if (navigator.appName.indexOf("Microsoft") != -1) {
return window[movieName]
}
else {
return document[movieName]
}
}
</script>
上記の関数を呼び出すボタンのコード:
<input type="button" onclick="callExternalInterface()" value="Call ExternalInterface" />
フラッシュ オブジェクトは、次の方法で埋め込まれます。
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="655" height="324" align="middle" id="swf" name="swf">
<param name="allowScriptAccess" value="always">
<param name="allowFullScreen" value="false">
<param name="movie" value="flash1.swf">
<param name="menu" value="false">
<param name="quality" value="best">
<param name="bgcolor" value="#f3f3f3">
<embed src="flash1.swf" menu="false" quality="best" bgcolor="#f3f3f3" width="655" height="324" align="middle" allowScriptAccess="always" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.adobe.com/go/getflashplayer" id="swf" name="swf">
</object>
Firebug コンソールによると、ボタンをクリックすると、次のエラーが表示されます。
thisMovie("swf").methodName は関数ではありません
関数を認識していないJavaScriptエラーのようです。このサイトからほとんどのコードを入手しました。助けていただければ幸いです。ありがとう!