
XMLを読込み、XML内に書かれたURL先の画像(複数枚)を取込んでサムネイル表示させています。参考書を見本にしてここまでは出来ました。
更に、読込んだ画像をクリックするとその画像に対する記事を別ウィンドウで開きたいのですが可能でしょうか?
具体的に言いますと、次の■■■部分を画像毎に設定することは可能でしょうか?
on (release) {
getURL("JavaScript:newWin(\"■■■\",\"sub\");");
}
●XMLの内容が下記であった場合
1.jpgをクリックすると1.htmlが開き、2.jpgをクリックすると2.htmlが開くといった感じです。
<pho>
<pic>
<fle>1.jpg</fle>
<toU>1.html</toU>
</pic>
<pic>
<fle>2.jpg</fle>
<toU>2.html</toU>
</pic>
</pho>
■ActionScriptの内容です。(全部書くと長くなってしまうので一部省略してます)
myXML = new XML ();
myXML.ignoreWhite = true;
myXML.load ("cpnimgs.xml");
v_xset = myBase._y;
myXML.onLoad = function (loaded) {
if (loaded) {
v_rNode = myXML.firstChild;
v_num = v_rNode.childNodes.length;
v_cPhoto = v_rNode.firstChild;
for (i=0; i < v_num; i++) {
v_loadURL = v_cPhoto.childNodes[0].firstChild;
v_cPhoto = v_cPhoto.nextSibling;
f_makeimg (i, v_loadURL);
}
} else {
trace ("error occured");
}
};
function f_makeimg (num, path) {
myBase.myLoad.duplicateMovieClip ("myLoad"+num, num+1);
v_name = eval("myBase.myLoad"+num);
z_Num = Math.floor(num / 4) ;
v_name._x = (num - (z_Num *4)) * 123;
v_name._y = z_Num * 175;
v_name.loadMovie (path);
myBase.myLoad._visible = false;
}
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
myBase.myLoad"+num の中にボタンがあって
myBase.myLoad"+num にloadMovieで外部の画像を読み込んでいるのなら
myBase.myLoad"+num内が置き換わるのでボタンは押せなくなります。
ためしに_rootにペンツール等で適当な文字でもかいて
_root.loadMovie("1.jpg")で_rootに画像を読み込むと
今まで書いてあった文字が画像に置き換わります。
でもまぁ押せるなら問題なしですね。
perseさんの方法を試してみましたが、現状の複製方法では、やはりうまくいきませんでした。(v_name.loadMovie (path);をコメント化すればトレースはできましたが、コメント化を解除すると今度は画像が読込めなくなりました)perse産が仰るようにmyBase.myLoad"+numの中にMCを作るようなコードであればうまくいくのかもしれません。
参考書によるとMCの中にMCを作って、それを複製すれば動作するようなことが書いてありました。現状のコードで問題ないかもしれません。このままのコードでいこうと思います。
「ためしでペンツールで・・・」の方法だと、今回のコードで言えばmyBaseに読込むようなことではないでしょうか?それでは無理なことは承知しています。
ん~~なんだか私の説明不足で誤解されている気が・・・。myBaseはMCです。
No.2
- 回答日時:
#1です。
動かなかったら応用も何もないですね。
#1の例ですが階層は以下の様に考えてました。
_root
--myBase
----myLoad1 …(1)
----myLoad2 …(2)
----myLoad3 …(3)
(1)、(2)、(3)は元は同じMCです。インスタンス名が違います。
その元のMCにボタンが配置されています。
質問の方ですが、テストとして
>myBase.myLoad._visible = false;
の下にでも
v_name.str=num //『myBase.myLoad"+num』に変数strを作成し値を代入する処理。
を、
myBase.myLoadの中のボタンアクションに
on(press){
trace(this.str)//さっき作った変数をトレースする処理
}
を記述し
>v_name.loadMovie (path);
をコメントにすれば今度こそできるはずですのでお試しください。
無事トレースされたらf_makeimgの引数をひとつ増やして
リンク先を渡してやればいいと思います。
v_name.loadMovie (path)をコメントにしたのは
myBase.myLoad"+num の中にjpgを読み込むと
中身が置き換わってしまい、ボタンが押せなくなるからです。
それを防ぐにはjpg読み込み用のMCを
myBase.myLoad"+numの中に作成する必要があるはずなのですが、
自己解決されたコードでボタン押せました??
なんか勘違いしてたらごめんなさい。
MC、ボタンの配置は冒頭のように考えています。
この回答への補足
度々の回答ありがとう御座います。
申し訳ありません!!!!
実は、今さっき気が付いたのですが出力ウィンドウがオカシイ・・・?と。
調べたところ、いつの間にかフィルタレベルが「なし」になってました。とんだ間抜けなことをしていました。これじゃぁトレースされてても表示されないですよね。(TT;)申し訳ありません。
#1の時点で問題ないかもしれません。
まだ試してませんが、明日にでも試してみます。
勝手ですが今日はもう眠さ限界なので寝かせて頂きます。明日にまた報告します。
>myBase.myLoad"+numの中に作成する必要があるはずなのですが、自己解決されたコードでボタン押せました??
はい、押せています。
v_nameをトレースすると以下のようになるので、myBase.myLoad"+num の中にjpgを読込んでいるようです。本来は押せないはずなのでしょうか?
_level0.myBase.myLoad0
_level0.myBase.myLoad1
_level0.myBase.myLoad2
No.1
- 回答日時:
動作確認していない例ですが
for(var i=1;i<=3;i++){
v_name = eval("myBase.myLoad"+i);
v_name.str = i+"番目"
}
//myBase.myLoadの中のボタンのアクションに
on(press){
trace(this.str)
}
と書く。
myBase.myLoad1のボタンを押すと 1番目
myBase.myLoad2のボタンを押すと 2番目
myBase.myLoad3のボタンを押すと 3番目
とトレースされます。
これの応用でできると思います。
この回答への補足
回答ありがとう御座います。
例を参考に記述してみましたが、うまくいきませんでした。
「応用する」ということで色々試してみましたが、出力ウィンドウに1.htmlなどのリンク先をトレースすることが出来ませんでした。
画像をクリックしても、strを参照できないようです。
自分でもアレコレ悩んだ挙句、強引?なコードではありますが自己解決しました。
myBase.myLoadの中のボタンアクションを次のようにしました。一応これで「1.jpg」=「1.html」など各画像に対応したリンク先にジャンプできます。(別ウィンドウ表示はこれからです)
on (press) {
LdName = new String(_name);
NaNber = LdName.length;
OpnURL = LdName.slice(6, NaNber);
OpnURL++;
getURL(OpnURL+".html");
}
ゴリ押しコード?でスマートじゃないと思いますがこれしか浮かんできませんでした。
もっと単純でスマートなコード例があれば、よろしくお願いします。または「上記のコードでは問題が発生する!」というご意見があればお願いします。
2、3日何も回答がなければ締め切りたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
元気が出るテレビ に出ていた...
-
韓国ドラマ ホジュン 朝鮮王...
-
ちゃんと覚えててくれてる! を...
-
北の国から:純の母親の浮気の...
-
仲良かった友達に急に距離を置...
-
西瓜の数え方
-
公衆電話に電話をかけることは...
-
最近家の中で物が消えます。す...
-
彼の運転が下手すぎてストレス...
-
中国の人々
-
昔の男最終回教えてください
-
なぜ過去に戻れないのですか?...
-
花より男子 道明寺司の父は?
-
ゴルゴさんの5秒写真的記憶脳...
-
「最終の美」という言葉はある...
-
田中康夫の人形
-
お見合いを申し込んで断られた...
-
今進んでる人生をやめたいです
-
女性の名前を教えて下さい
-
「開けゴマ!」の反対の言葉
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
昔の男最終回教えてください
-
私はクラスである女子をイジメ...
-
死にたい きえたい いなくなり...
-
私のプロフィールを見て許せな...
-
今日も一日お疲れ様でした! 今...
-
子供の入学式。母親のヘアメイ...
-
「ごめんなさい」が出来ない人...
-
スピード違反者の癖に
-
昔のドラマは生放送で放送して...
-
つくづく死んだらどうなるか気...
-
好きなドラマは何??
-
ちゃんと覚えててくれてる! を...
-
金曜ドラマ「昔の男」最終回
-
昔の男 最終回の結末!!
-
仲良かった友達に急に距離を置...
-
公衆電話に電話をかけることは...
-
S.O.S最終回ストーリー教えてく...
-
花より男子 道明寺司の父は?
-
韓国ドラマ ホジュン 朝鮮王...
-
彼の運転が下手すぎてストレス...
おすすめ情報