
flash内に設置した複数のボタンに外部xmlから取得したurlを設定したいです。
検索したり過去の質問も見てましたが、いまいちわかりませんでしたのでご教授頂けたらと思います。
現在は↓のようになっています。
これですと1つしか読み込めないので、複数設定してそれぞれのリンクを設定したいと思っています。
わかる方いらっしゃいましたら何卒よろしくお願い致します。
xmlのソース(url.xml)
<?xml version="1.0" encoding="UTF-8"?>
<top>
<menu>
<title>url</title>
<url>http://www.google.co.jp/</url>
</menu>
</top>
FLASH内のスクリプト(フレーム)
function startIndexMenu(success)
{
if (success == true)
{
rootNode = index_xml.firstChild;
firstMenuNode = rootNode.firstChild;
childMenuNode = firstMenuNode.firstChild;
updateMenu(childMenuNode);
} // end if
} // End of the function
function updateMenu(newMenuNode)
{
slideText = newMenuNode.firstChild.nodeValue;
slideText_op = newMenuNode.nextSibling;
urlNode = slideText_op.firstChild.nodeValue;
nextMenuNode2 = firstMenuNode.nextSibling;
slideText2 = nextMenuNode2.firstChild.nodeValue;
nextMenuNode3 = nextMenuNode2.nextSibling;
slideText3 = nextMenuNode3.firstChild.nodeValue;
} // End of the function
index_xml = new XML();
index_xml.onLoad = startIndexMenu;
index_xml.load("url.xml");
index_xml.ignoreWhite = true;
ボタンに設定してるスクリプト
on (release)
{
getURL(_root.urlNode, "");
}
No.1ベストアンサー
- 回答日時:
「どうするのか」というのは作者の意図で決めることが大半です。
ですから
「こうすべき」とか「これが良い」というような回答はできません。
というわけで
以下に書くことはあくまでも「たとえばの一例」です。
例えば「url.xml」の内容は次のようにします。
------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<top>
<menu>
<title>Google</title>
<url>http://www.google.co.jp/</url>
</menu>
<menu>
<title>Yahoo!</title>
<url>http://www.yahoo.co.jp/</url>
</menu>
<menu>
<title>Bing</title>
<url>http://www.bing.com/</url>
</menu>
</top>
------------------------------
この場合,
例えばフレームに書くスクリプトは次のようにします。
※「制御」→「ムービープレビュー」での
動作検証用にいちいち trace を入れています。
(trace行は本来不要です。)
//----------------------------
function startIndexMenu(success)
{
if (success)
{
//親のノードを取得
rootNode = index_xml.firstChild;
trace("rootNode→ " + rootNode);
//
//親の持つ子ノードの数を取得
child_len = rootNode.childNodes.length;
trace("child_len→ " + child_len);
//
//子の数だけ i の数を 0 から 1 ずつ加算しながらループ
for (var i = 0; i < child_len; i++)
{
//子ノードを(一時的に)取得
var child = rootNode.childNodes[i];
//
//_root の 変数「child○_title」に各 「title」を代入
_root["child" + i + "_title"] = child.childNodes[0].firstChild.nodeValue;
trace("_root.child" + i + "_title→ " + _root["child" + i + "_title"]);
//_root 変数「child○_url」に各 「title」を代入
_root["child" + i + "_url"] = child.childNodes[1].firstChild.nodeValue;
trace("_root.child" + i + "_url→ " + _root["child" + i + "_url"]);
}
}
}
index_xml = new XML();
index_xml.onLoad = startIndexMenu;
index_xml.load("url.xml");
index_xml.ignoreWhite = true;
//----------------------------
そして
例えば1つ目のボタンには次のように書きます。
//----------------------
on (release)
{
getURL(_root.child0_url, "_self");
}
//----------------------
2つ目のボタンであれば次のように書きます。
//----------------------
on (release)
{
getURL(_root.child1_url, "_self");
}
//----------------------
3つ目のボタンであれば次のように書きます。
//----------------------
on (release)
{
getURL(_root.child2_url, "_self");
}
//----------------------
※以上の全スクリプト
ActionScript 1.0
Flash 5(CS5 ではなくてただの5)以上で使用可
Flash Player 5 以上で動作可
今現在のような
こういう各ボタンの決め打ちのようなやり方では
XMLのデータ量(XMLのリンク個数)の変更によって
ボタンの数を変えたりすることはできません。
しかし
フレームのスクリプトの方では
//親の持つ子ノードの数を取得
child_len = rootNode.childNodes.length;
によってデータ数を得て
その個数によって forループ の数を変えていますから
XMLに応じた動的コンテンツの作成にも一応は対応させているつもりです。
つまり
さらに工夫することで,
XMLからURLもそのリンク数自体も変えるというような
さらなる発展につなげられるような形にはしているつもりです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
uwscでExcelに自動記入
-
スクリップト
-
arduino プログラムについて
-
ダウンロードしたデジブックはa...
-
パソコンのリカバリーについて
-
大学からの課題をやるのに、Ado...
-
アメリカから買ったダウンロー...
-
アメブロで音声ファイルを貼る方法
-
FLASHでゲームを作っていた人は...
-
この曲はなんでしょう?
-
laptop go2からの買い替え、lap...
-
私のコンピューター上のファイ...
-
chrome flash
-
FLASHの再生はできないのでしょ...
-
フラッシュゲームアーカイブ2
-
ウェブサイトで Flash が事実上...
-
Flashコンテンツを使ったWebサイト
-
Flash Playerのサポートが終了
-
Form内のselectを連動させるに...
-
Flashをブロックしないで
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
else if文の順序を変えることに...
-
四乗根を英語で言うと・・・
-
ランダムな動きのスピード制御...
-
python ボタンを押すと複数の関...
-
ボタンを押した後○秒後に消える
-
Flashの外部ファイルについて
-
画像のスクロール
-
フレーム上から書くfunctionに...
-
node* ってなんなのでしょうか?
-
3つのMCが全てクリックされた...
-
ムービークリップを止めたいの...
-
リンゲージの設定
-
外部mp3をストリーミング再生...
-
FLASH オブジェクトをスクリプ...
-
良いソースの書き方について(複...
-
Pythonのtkinterについて
-
pythonのグローバル変数
-
Flashで、ナビゲーションがマウ...
-
ActionScript 孫のパス
-
Excel VBAで読み込んだテキスト...
おすすめ情報