フラッシュをランダム表記+個別リンク設定
フラッシュ製作環境がないので、アクションスクリプトで
リンク設定のできないswfがいくつかあり、これを個別に
リンク設定させ、リロードごとにランダムに表示したいです。
リンク設定をしなければ、
<SCRIPT LANGUAGE="JavaScript">
<!--
simg=new Array(3);
simg[0]="○○";
simg[1]="△△";
simg[2]="□□";
Myimg=Math.floor(3*Math.random());
document.write("<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.c... width='180' height='150'><param name='allowScriptAccess' value='sameDomain' /><param name='movie' value='"+simg[Myimg]+".swf' /><param name='quality' value='high' /><param name='bgcolor' value='#ffffff' /><param name='LOOP' value='false'><embed src='"+simg[Myimg]+".swf' quality='high' bgcolor='#ffffff' width='180' height='150' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' loop='false' /></embed></object>");
//-->
</SCRIPT>
で、うまくランダムに表示されました。
しかし、これに各ファイルにリンクを設定したいのです。
ランダムにせずに1つだけのバナーなら
<object type='application/x-shockwave-flash' data='○○.swf' width='180' height='150'><param name='flashvars' value='clickTag=http://○○.html&clickTarget=_self' /><param name='allowScriptAccess' value='always' /><param name='movie' value='○○.swf' /><param name='bgcolor' value='#ffffff'></object>
でリンクは貼れたのですが、
ランダム表示の記述に組み合わせるすべがわかりません。
なにとぞよろしくお願いします。
投稿日時 - 2009-04-05 19:01:40
どんなFLASHをお使いか分からないので、動作確認はできませんが下記のコードはどうでしょうか。
<SCRIPT LANGUAGE="JavaScript">
<!--
// イメージファイルパスの初期化
simg = new Array(3);
simg[0]="○○";
simg[1]="△△";
simg[2]="□□";
// ジャンプ先URLの初期化
surl = new Array(3);
surl[0] = "h ttp://aaa.com/";
surl[1] = "h ttp://bbb.com/";
surl[2] = "h ttp://ccc.com/";
// 表示するFLASHを決める
Myimg = Math.floor(3*Math.random());
// FLASHを表示させるHTMLを吐く
document.write("<object type='application/x-shockwave-flash' data='" + simg[Myimg] + ".swf' width='180' height='150'>");
document.write("<param name='flashvars' value='clickTag=" + surl[Myimg] + "&clickTarget=_self' />");
document.write("<param name='allowScriptAccess' value='always' />");
document.write("<param name='movie' value='" + simg[Myimg] + ".swf' />");
document.write("<param name='bgcolor' value='#ffffff'>");
document.write("</object>");
//-->
</SCRIPT>
注意
・document.writeは、中の文字列が連続しすぎてよく分からないことになっていたので、分割してしまいました (^^;
・OBJECTタグに対応していないブラウザ用と思われるEMBEDタグは省略してしまいました。
投稿日時 - 2009-04-06 20:09:55
問題なくできました!!
本当にありがとうございます!!!
今年一番感激しました!
今日は寝る前に何度もお礼を言ってから
就寝いたします。ありがとうございました!!
投稿日時 - 2009-04-06 21:56:34
このQ&Aは役に立ちましたか?
1人が「このQ&Aが役に立った」と投票しています
回答(2)
最初の初期化部分に
surl = new Array(3);
surl[0] = "http://aaa.com/";
surl[1] = "http://bbb.com/";
surl[2] = "http://ccc.com/";
を追加し、リンク先のアドレスにsurl[Myimg]が埋め込まれるスクリプトにしてみてはどうでしょうか。
投稿日時 - 2009-04-05 19:17:20
回答ありがとうございます
<SCRIPT LANGUAGE="JavaScript">
<!--
surl = new Array(3);
surl[0] = "http://aaa.com/";
surl[1] = "http://bbb.com/";
surl[2] = "http://ccc.com/";
simg=new Array(3);
simg[0]="○○";
simg[1]="△△";
simg[2]="□□";
Myimg=Math.floor(3*Math.random());
document.write("<object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.c... width='180' height='150'><param name='allowScriptAccess' value='sameDomain' /><param name='movie' value='"+simg[Myimg]+".swf' /><param name='quality' value='high' /><param name='bgcolor' value='#ffffff' /><param name='LOOP' value='false'><embed src='"+simg[Myimg]+".swf' quality='high' bgcolor='#ffffff' width='180' height='150' allowScriptAccess='sameDomain' type='application/x-shockwave-flash' pluginspage='http://www.macromedia.com/go/getflashplayer' loop='false' /></embed></object>");
//-->
</SCRIPT>
こういう記述でいいのでしょうか?
表示はできなかったです。。。
投稿日時 - 2009-04-05 20:52:03