このコードを使用して、画像の onclick コマンドで swf を再生しています。最初のクリックで、「flashMovie.Play は関数ではありません」というエラーが表示されます。2回目のクリックで動作し、その後は毎回動作します。これは、ページ内の他の要素との実行順序と競合していますか? 2 回目のクリックが正常に機能する最初のクリックで何が起こっていますか? (これは IE では機能しますが、Firefox では機能しません)
これにある種のタイミング遅延を入れると、おそらく助けになりますか? どうすればそれを試すことができるかについて何か提案はありますか?
<script language="JavaScript">
function getFlashMovieObject(movieName)
{
if (window.document[movieName])
{
return window.document[movieName];
}
if (navigator.appName.indexOf("Microsoft Internet")==-1)
{
if (document.embeds && document.embeds[movieName])
return document.embeds[movieName];
}
else // if (navigator.appName.indexOf("Microsoft Internet")!=-1)
{
return document.getElementById(movieName);
}
}
function PlayFlashMovie(name)
{
var flashMovie=getFlashMovieObject(name);
flashMovie.Play();
}
</script>