• ベストアンサー

配布されたFLASH *.swf に リンクを貼る方法

こんにちは。 リンク用バナーとして、FLASHで作成された*.swfと言うファイルが配布されました。 それを、Dreamweaverを使用してページに組み込みましたが リンクを貼ることが出来ません。画像にリンクを貼るような方法では 無理なのだと、分かりました。 このファイルにはリンク先が埋め込まれていないため、 以下の方法では設定出来ませんでした。 http://www.adobe.com/jp/support/dreamweaver/ts/documents/dw0217.html FLASH MXにて、手が加えられるのかと思いまして とりあえず、ファイル-読み込みで開いては見たのですが、 何をどうしたら良いのか分かりません。 リンクを貼る良い方法があったら教えてください。 よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#35109
noname#35109
回答No.5

かなり遅い回答ですみません。 遅すぎたとは思いますが一応回答…。 > リンク用バナーとして、 > FLASHで作成された*.swfと言うファイルが配布されました。 ここが,超スゴク理解しがたいです。 おそらく(絶対)配布者の配布ミスですよ。 もしくは, リンク用バナーではなく,普通のヘッダーに使うようなバナーです。 Flash は, 基本的にFlash内に getURL などでリンク先を用意しておかないと, リンクは張れません。 HTML側から SWF にリンクを張る変な裏技はあるにはありますが, 使わない方が良いです↓。 http://oshiete1.goo.ne.jp/qa1585290.html  ↑教えて!goo  ↓OKWave  (同じです) http://okwave.jp/qa1585290.html (↑私が回答していますが良くない裏技例です。) 前置きはこの辺で。 =========================== せっかく作ってある SWF を, FLAファイル内に読み込む方法は良くありません。 壊れたり汚くなったり容量が増えたりするだけで,メリットはほとんどありません。 また,Flash MX をお持ちだと言うことですから, #4の方のアイデアを半分借りて, FLA ファイル内に SWF を読み込むのではなく, SWF ファイル内に SWF ファイルを ロード し, その 親元 SWF の方に リンクを仕込んでおく方法を取りましょう。 しかし, かなり Flash 初心者の方であるようなので, 複雑な構造作成は抜きにして, ActionScript 一発で済ませる方法を書きます。 初心者の方であれば, 構造を作るより,ActionScript のコピペが一番簡単だと思います。 バナーSWF の名前がわかりませんが, この説明では 「banner.swf」 というファイル名であったとしておきます。 まず,Flash MX を起動してください。 すると, 「名称未設定-1.fla」 のように勝手に名前の付いた新規ファイルが開くと思いますから, ステージの下の プロパティインスペクタ(プロパティパネル) で, ドキュメントのサイズ(縦横ピクセル)を, 「banner.swf」 (仮称) と同じ大きさにしてください。 次にステージ上のタイムラインを見ます。          目錠□ | 1  □ レイヤー1 筆・・■|○| のようになっていると思いますから, フレーム1 の 空白キーフレーム(○)を選択して, ステージの下の アクションパネル を表示させます。 そして, ActionScript を書く白い部分に, 次の 点線内をコピペしてください。 ------------------------------------------- // _level1 にバナーとなる SWF ファイルをロード loadMovie("banner.swf", 1); // // 空のムービークリップを作成 _root.createEmptyMovieClip("clickMC", 0); // // そのムービークリップを透明な塗りで塗りつぶす with (_root.clickMC) { beginFill(0xFFFFFF, 0); lineStyle(0, 0xFFFFFF, 0); moveTo(0, 0); lineTo(Stage.width, 0); lineTo(Stage.width, Stage.height); lineTo(0, Stage.height); endFill(); } // // clickMC をクリックしたときの動作定義 _root.clickMC.onRelease = function() { // リンク先を _blank (新窓)で開く this.getURL("※開きたいURL", "_blank"); }; ------------------------------------------- 変える場所が2箇所あります。  // _level1 にバナーとなる SWF ファイルをロード  loadMovie("banner.swf", 1);            ↑ この banner.swf を,実際のバナーのファイル名に変えてください。 もしくは,ファイル名を banner.swf に変えてくださってもかまいません。 もう1箇所変える部分があります。  // リンク先を _blank (新窓)で開く  this.getURL("※開きたいURL", "_blank");              ↑ この ※開きたいURL を,実際のバナーのリンク先URLに変えてください。 そして, その FLAファイルを, 「banner.swf」 (仮称)と同じフォルダに, 任意の名前(例えば load.fla )で保存してください。 そして,パブリッシュします。 パブリッシュされた,HTML を開くと, 「load.swf」(仮称)の中に 「banner.swf」 (仮称)が表示されていて, ちゃんとリンクがかかっていると思います。 なお,  loadMovie("banner.swf", 1); の "banner.swf" は, パブリッシュされた HTML と同じフォルダに 「banner.swf」 (仮称)がある場合のパスです。 loadMovie でロードする際のパスは, ロードする SWF(「load.swf」(仮称))から 「banner.swf」 (仮称) を見たパスではなく, HTML から 「banner.swf」 (仮称) を見たパスになります。 フォルダやファイル移動する場合はその点に気を付けてください。 以上, 手作業でしても良い部分を,ActionScript でやってしまうやり方のサンプルです。

sgmsgm
質問者

お礼

どうもありがとうございました。 >フレーム1 の 空白キーフレーム(○)を選択して, >ステージの下の アクションパネル を表示させます。 >ActionScript を書く白い部分に, >次の 点線内をコピペしてください。 の手順で、アクションのonの部分が薄くなっていました。 私の選択の箇所が悪いのか分からないのですが、onReleaseがどうやら 無効っぽいので、たぶんクリックしても何も起きなかったようです。 読み込みは表示されたことから、onReleaseが使える状態でなかった何かの原因があると思うのですが、初心者なので全く分かりません。 よろしければ、どこが違うのか教えていただけますと幸いです。

sgmsgm
質問者

補足

どうも丁寧にありがとうございます。 このバナーは、ダウンロードした個人が個別に使うためのものなのです。個々のサイト内でのバナーボタン用なので、リンク先は自分のページ内なので特定のリンク先は埋め込まれておりません。でも架空のものでも埋めてもらっていれば簡単なのですよね、たぶん。 で、早速やってみたのですが、パブリッシュされた,HTML を開いても、表示はされますがリンクが設定されていません。blankの部分を削ってしまいましたが、特に問題ないかと思います。 なにか、間違っている点があるかと思うのですが、見直して見るとしたらどの点でしょうか?よろしくお願いいたします。

その他の回答 (4)

回答No.4

すいません。確認したところできませんでした。 正式にはFLASHソフトで加工が必要です。MXをお持ちということなので当方が使っている参考書から抜粋して書いてみましたよろしければ...。 >透明ボタンの生成 1.まず画像(バナー)をFLASH MXで読み込む 2.その画像の上にバナーをクリックできるように透明ボタンを付ける ※挿入>新規シンボルでつくり、タイプはボタン ※線カラーをカラーなしに設定し塗りのカラーは何色でもOK 3.タイムラインを開きアップのキーフレームをヒットにドラッグ >透明ボタンの配置 1.読み込んだ画像(バナー)の上にシーン1にレイヤーを生成 >ボタンにアクションを設定 1.+>アクション>ブラウザ/ネットワーク>getURL 2.URLに表示したいページのURLを入力 これでどうでしょうか?一応当方FLASH8にしてしまって動作確認はできませんが...

sgmsgm
質問者

お礼

どうもありがとうございました。 初心者過ぎたので、透明ボタンが見えないのは出来ていないと思っていたことや、ライブラリが表示されていなかったため、そもそも作ったボタンをレイヤーにドラッグできていないことが原因でした。ありがとうございました。

sgmsgm
質問者

補足

ありがとうございます。 大変参考になりました。 ただ、実は、MXは持っていましたが、使うのが今回初めてで 分からないことばかりで、説明の手順でも難航してしまいました。 >3.タイムラインを開きアップのキーフレームをヒットにドラッグ すみません、これが分からないのです。 アップと言うところの下の枠をドラッグすればいいのでしょうか? 縦線もドラッグできるのでどれか分かりませんでした。 >ボタンにアクションを設定 ってここら辺の処理がどうも怪しいような気がしますが そもそも作ったボタンって、どこに出来たのか良く分からず・・・。 なんとかできた・・と思ったら、 自動ジャンプみたいになって、クリックせずとも 設定したページにジャンプしてしまいます。 うーん、もうすぐだと思うのですが、MX初なので手間取っています。

  • abukuma06
  • ベストアンサー率51% (43/83)
回答No.3

#1 abukuma06です #2 kuronekoyaさんががおっしゃっている 「その画像の上にホットスポットを設定してURLのリンクを付けるという手ですが」を下記のタグを使ってやってみましたが、リンクを貼ることはできませんでした。 <AREA href="*****.html" target="_blank" shape="circle" coords="***,***,***"> どうやら、swfファイルを作る過程でリンクを埋め込むか、アニメーションgifを作ってリンクを貼るしか方法がないようです。 http://myhome.ram.ne.jp/fla0001.htm

sgmsgm
質問者

お礼

どうもありがとうございます。 その先が分からず苦労しています(^^;

回答No.2

うーん...フラッシュ画像にホットスポットを張ったりしたらどうでしょう?配布するものではなくてご自分のHP内におくだけであれば... FLASHエレメントからドリームウェイバーの指定のページに貼り付け、その画像の上にホットスポットを設定してURLのリンクを付ける という手ですが.... 初心者なみの回答しかできなくてすいません。

sgmsgm
質問者

お礼

どうもありがとうございます。 残念ながら、画像のように扱うことは出来ないようですので ホットスポットを設定するようなプロパティはDreamweverの メニューには出てこないです。

  • abukuma06
  • ベストアンサー率51% (43/83)
回答No.1

下記タグでは、だめでしょうか? <EMBED src="*.swf" width="○○○" height="○○○">

sgmsgm
質問者

補足

どうもありがとうございます。 私の説明が足りませんでした。 ******.swf を保存して、入れたい箇所へドラッグしたので ページには埋め込みが完了しています。 このFLASHのオブジェクトを クリックすると別のページへ飛ぶリンクバナーにしたいのです。 リンク先は、どのように設定すればよいのかご存知でしたら 教えていただけると幸いです。

関連するQ&A