FlashでURLクエリーを受け取る方法
URLクエリーをフラッシュで受け取る方法を探っていました。
たとえば
以下のような感じでリクエストがくるとします。
<a href="pppp.html?send=test.jpg">SWFにURLクエリーとしておくる</a>
フラッシュで受け取りたいのはtest.jpg
まずはswfを呼び出すhtmlの書き方。
重要なのはjavaScriptを使うこと。基本的な部分はFlashからのパブリッシュを使います。
必要な部分を書き換えてください。
<script language="javascript">
// 変数データにURL以降の値を取得
var data=location.search.slice(1);
// 強引に置き換えで、余計な文字列を削除
var dataR = data.replace("send=","");
document.write("データの中身は",dataR);
document.write('<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-44455354XXXX" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,0,0" width="800" height="600" id="pppp" align="middle">');
document.write('<param name="allowScriptAccess" value="sameDomain" />');
document.write('<param name="allowFullScreen" value="false" />');
document.write('<param name="movie" value="pppp.swf" />');
document.write('<param name="FlashVars" value="imgName='+dataR+'" />');
document.write('<param name="quality" value="high" />');
document.write('<param name="bgcolor" value="#ffff99" />');
document.write('<embed src="pppp.swf" FlashVars="imgName=',dataR,'" quality="high" bgcolor="#ffff99" width="800" height="600" name="pppp" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />');
document.write('</object>');
</script>
こんな感じでうけとることができました。
« iMacさてさて | トップページ | iMac事のいきさつ(物語風) »
コメント