トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   コーダーズルーム【スクリプト系】
     プルダウンメニュー スライド式
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
さのっち
Åê¹ÆNo.28339
投稿日時: 2006-8-31 14:02
半人前
居住地: 東京
投稿: 34
使用環境:
3.9,
プルダウンメニュー スライド式
こんにちは。いつもお世話になっております。
ここで質問できるかどうかは分からないのですが質問させて下さい。

オールFlashで、しかもプルダウンメニューでスライド式にしたいのです。

【イメージしているものに一番近いサイト】
http://ryu-miyake.s20.xrea.com/Sub/my_f/ryu/pdown/index_s.shtml

ココのサイトは、CSSで作成をしていると思いますが
Flashを使ってでできないものかと…。

アドバイスがあれば教えて頂きたいです!
できればスクリプト記入でお願いします。

よろしくお願いします!

Tonpoo (gaienboy改め)
Åê¹ÆNo.28342
投稿日時: 2006-8-31 15:57
職人
居住地: 東京・神宮前
投稿: 717
使用環境:
Windows 7 Professional,
Flash CS5 Pro,
Flash Player 10,1,102,64
Re: プルダウンメニュー スライド式
こんにちは。gaienboyといいます。
引用:
さのっちさんは書きました:
オールFlashで、しかもプルダウンメニューでスライド式にしたいのです。

下記ページの「Windowsエクスプローラー風ツリーメニュー1」などが
参考になるのではないでしょうか。
フラッシュサンプル - ナビゲーション系
ただし、もしページ全体がFlashではなく、プルダウンメニュー
部分のみがFlashであるとするならば、気をつけなければいけない
ことがあります↓
htmlと重ねて表示させる


----------------
Tonpoo (a.k.a. gaienboy)
Tonpoo.com / TONPOOBLOG / twitter@tonpootwit

さのっち
Åê¹ÆNo.28345
投稿日時: 2006-8-31 17:09
半人前
居住地: 東京
投稿: 34
使用環境:
3.9,
Re: プルダウンメニュー スライド式
gaienboyさん。初めまして。こんにちは。

申し訳ないです…私の説明不足なのですが、
左側のプルダウンメニューがブラウザのスクロールバーを下げるたびに、
左側のプルダウンメニューも一緒に落ちていくしくみにしたいのです。

ほんと説明不足で申し訳ないです…。
Tonpoo (gaienboy改め)
Åê¹ÆNo.28350
投稿日時: 2006-8-31 21:46
職人
居住地: 東京・神宮前
投稿: 717
使用環境:
Windows 7 Professional,
Flash CS5 Pro,
Flash Player 10,1,102,64
Re: プルダウンメニュー スライド式
こんにちは。gaienboyです。
引用:
さのっちさんは書きました:
申し訳ないです…私の説明不足なのですが、
左側のプルダウンメニューがブラウザのスクロールバーを下げるたびに、
左側のプルダウンメニューも一緒に落ちていくしくみにしたいのです。

ちょっと確認させてください。さのっちさんの作ろうとしている
ページは「基本的にはHTMLで構成されていて、ナビゲーション
(プルダウンメニュー)のみがFlashになっている」というページ
でしょうか?それとも、「ナビゲーション部分も含むページ全体が
Flashでできている」というページでしょうか?


----------------
Tonpoo (a.k.a. gaienboy)
Tonpoo.com / TONPOOBLOG / twitter@tonpootwit

さのっち
Åê¹ÆNo.28351
投稿日時: 2006-8-31 22:07
半人前
居住地: 東京
投稿: 34
使用環境:
3.9,
Re: プルダウンメニュー スライド式
こんばんは。

引用:

ページは「基本的にはHTMLで構成されていて、ナビゲーション
(プルダウンメニュー)のみがFlashになっている」というページ
でしょうか?それとも、「ナビゲーション部分も含むページ全体が
Flashでできている」というページでしょうか?


「ナビゲーション部分も含むページ全体がFlashでできている』ということです。
さらに分からなくなりましたよね…申し訳ないです…。
Tonpoo (gaienboy改め)
Åê¹ÆNo.28382
投稿日時: 2006-9-1 11:39
職人
居住地: 東京・神宮前
投稿: 717
使用環境:
Windows 7 Professional,
Flash CS5 Pro,
Flash Player 10,1,102,64
Re: プルダウンメニュー スライド式
こんにちは。gaienboyです。
引用:
さのっちさんは書きました:
「ナビゲーション部分も含むページ全体がFlashでできている』ということです。
さらに分からなくなりましたよね…申し訳ないです…。

なるほどなるほど。

ええと、今さらなんですが、「プルダウンメニューを作る」という
ことと、「何かしらのオブジェクト(今回の場合はメニュー)が
ウィンドウのスクロールに合わせてスライドする」
ということは、
分けて考えましょう。

前者については、このスレッドの投稿No.28342でサンプルを提示
したので、とりあえずそちらを参考にしてください。

で、後者についてということになるんですが、その前に、さのっち
さんが作ろうとしているサイトについて、もうちょっと確認させて
ください。

「ブラウザのスクロールバーが出る」ということは、コンテンツの
量が多くて、サイト全体が縦長になり、一画面に入りきらない、
ということを想定しているんですよね?オールFlashでそういった
縦長のサイトを組むことの是非や向き不向きは置いておいて、
「オールFlashの縦長のサイト」のイメージとしてはこんな感じで
しょうか?↓

「縦長のHTMLエリア」に「縦長のSWF」を埋め込んでいる
(正確にはちょっと違うけど)例:
Bascule

もしこのパターンで、スクロールに合わせてスライドする機構を
取り入れる場合は、JavaScriptでブラウザのスクロール位置を取得
し、その値をFlash側に渡して、その値を元にメニューのムービー
クリップの位置を移動する
、というようなことになると思います。

他の考え方としては、一定の大きさのHTMLエリア(もしくは
ブラウザウィンドウサイズいっぱいいっぱいのHTMLエリア)に、
そのHTMLエリアと同じ大きさのSWFを埋め込み、そのSWFの中に
縦長のムービークリップを配置して、SWFの中でスクロールを
制御する
、という方法もあります。
(サンプルになりそうなサイトが思いつかなかったので、わかり
辛くてスイマセン)

この場合、わざわざJavaScriptをかませる必要は無いので、
本文(?)のムービークリップのスクロールの状態を取得して、
その値を元にメニューのムービークリップの位置を移動すれば
良いので、個人的にはこちらの方が作るのは楽なんじゃないかと
思います。


----------------
Tonpoo (a.k.a. gaienboy)
Tonpoo.com / TONPOOBLOG / twitter@tonpootwit

さのっち
Åê¹ÆNo.28386
投稿日時: 2006-9-1 12:36
半人前
居住地: 東京
投稿: 34
使用環境:
3.9,
Re: プルダウンメニュー スライド式
こんにちは。さのっちです。
返信ありがとうございます。

引用:
「ブラウザのスクロールバーが出る」ということは、コンテンツの
量が多くて、サイト全体が縦長になり、一画面に入りきらない、
ということを想定しているんですよね?オールFlashでそういった
縦長のサイトを組むことの是非や向き不向きは置いておいて、
「オールFlashの縦長のサイト」のイメージとしてはこんな感じで
しょうか?↓

「縦長のHTMLエリア」に「縦長のSWF」を埋め込んでいる
(正確にはちょっと違うけど)例:
Bascule

もしこのパターンで、スクロールに合わせてスライドする機構を
取り入れる場合は、JavaScriptでブラウザのスクロール位置を取得
し、その値をFlash側に渡して、その値を元にメニューのムービー
クリップの位置を移動する
、というようなことになると思います。。


ここまで縦長ではないのですが…。
前者のJavaScriptを使ってのやり方で作業をしたいのです。
他のコンテンツも、そういうやり方になるため、後者のやり方だと
他のコンテンツも同じように作る可能性が出てきそうなので…。

やり方はわかりました。でもコーディングとなると…。
まだまだ分からずじまいの状態なので…。
まことに申し訳ありませんが、コーディングを教えて頂けると助かります!
ご迷惑をおかけましますが、よろしくお願いします。
Tonpoo (gaienboy改め)
Åê¹ÆNo.28392
投稿日時: 2006-9-1 13:19
職人
居住地: 東京・神宮前
投稿: 717
使用環境:
Windows 7 Professional,
Flash CS5 Pro,
Flash Player 10,1,102,64
Re: プルダウンメニュー スライド式
こんにちは。gaienboyです。
引用:
さのっちさんは書きました:
やり方はわかりました。でもコーディングとなると…。
まだまだ分からずじまいの状態なので…。
まことに申し訳ありませんが、コーディングを教えて頂けると助かります!

えーと、一応そういうのを仕事にしているので、発注してください

・・・というのは半分冗談で、教えて差し上げることはできるかも
しれないんですが、それだと勉強になりませんし、ご自分でいろいろ
試行錯誤しながらやってみてください。

ポイントとしては、
(A)JavaScriptを使ってブラウザのスクロール位置を取得する
(B)JavaScriptから値をFlashに渡す

・・・の2点についてそれぞれできるようにして、その後に
それぞれを連携させる、というような流れになると思います。

(A)の参考↓
「JavaScript@Keynavi.Net」 スクロール位置取得:kl_slx/y():

(B)の参考↓
Flashゲーム講座&ASサンプル集【FlashとJavaScriptとでやりとりする】


----------------
Tonpoo (a.k.a. gaienboy)
Tonpoo.com / TONPOOBLOG / twitter@tonpootwit

さのっち
Åê¹ÆNo.28400
投稿日時: 2006-9-1 22:22
半人前
居住地: 東京
投稿: 34
使用環境:
3.9,
Re: プルダウンメニュー スライド式
こんばんは。さのっちです。
返信ありがとうございます。

ご指摘等ありがとうございます。
さっそくやってみましたが、やっぱり反応が出ないのです…。
自分が入力したものは以下の通りです。

<HTML>
<HEAD>
<meta http-equiv=Content-Type content="text/html; charset=SHIFT_JIS">
<TITLE>index</TITLE>

<script language="JavaScript">

window.document.movie.SetVariable("_level0.keitai", navigator.appName);

function kl_slx(){
????????if(KL_NS4 || KL_NS6) return self.pageXOffset;
????????if(KL_IE4 || KL_OP6) return kl_dbody().scrollLeft;
}
function kl_sly(){
????????if(KL_NS4 || KL_NS6) return self.pageYOffset;
????????if(KL_IE4 || KL_OP6) return kl_dbody().scrollTop;
}
//-->
</script>
</HEAD>
<BODY bgcolor="#FFFFFF">
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/
swflash.cab#version=5,0,0,0" name="movie"
WIDTH=750
HEIGHT=800
id="movie"
>
<PARAM NAME="movie" VALUE="index.swf">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=bgcolor VALUE=#FFFFFF>
<EMBED
src="index.swf"
WIDTH=750
HEIGHT=800
quality=high
bgcolor=#FFFFFF
TYPE="application/x-shockwave-flash"
PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?
P1_Prod_Version=ShockwaveFlash" name="movie"
>
</EMBED>
</OBJECT>
</BODY>
</HTML>

これはHTMLでJavaScriptを入れたときの状態です。
これで反応がないということはFlashの方にもスクリプトを入れないと
いけないのでしょうか?
まだまだ分からないことだらけなので、ご指摘あれば教えて頂きたいです…。
よろしくお願いします。
Tonpoo (gaienboy改め)
Åê¹ÆNo.28442
投稿日時: 2006-9-4 11:32
職人
居住地: 東京・神宮前
投稿: 717
使用環境:
Windows 7 Professional,
Flash CS5 Pro,
Flash Player 10,1,102,64
Re: プルダウンメニュー スライド式
こんにちは、gaienboyです。
引用:
さのっちさんは書きました:
さっそくやってみましたが、やっぱり反応が出ないのです…。
自分が入力したものは以下の通りです。

えっと、特にスクロール検地のJavaScriptの方に関して、参考サイトの
スクリプトを貼り付けただけでは動きませんよ(^^;)。その
ご様子だと、JavaScriptの組み方をご理解なされていらっしゃらない
ようなので、一度そちらも勉強されるといいかと思います。

・・・とはいえ、上で挙げたスクロール位置取得のサイトは、今回の
参考としてあげるには不適切だったかも知れません。お詫びがてら、
簡単に組んでみたので、ちょっと下記を試してみてください。

<html>
<head>
	<title>onScroll</title>
	<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS">
	<script language="JavaScript" type="text/javascript">
	<!--
		function scrollFunc(){
			//ブラウザの種類を判別
			var bName = navigator.appName.charAt(0);
			//判別したブラウザの種類によって処理を振り分け
			if(bName == "M"){
				//ブラウザがIEならscrollTopを使ってスクロール位置を取得
				var scrollPos = document.body.scrollTop;
			}else{
				//ブラウザがIE以外ならpageYOffsetを使ってスクロール位置を取得
				var scrollPos = pageYOffset;
			}
			//現在のスクロール位置をSWF側に渡す
			window.document.movie.SetVariable("_level0.keitai",scrollPos);
		}
	//-->
	</script>
</head>
<body onScroll="scrollFunc();">
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/
swflash.cab#version=5,0,0,0" name="movie"
WIDTH=750
HEIGHT=800
id="movie"
>
<PARAM NAME="movie" VALUE="index.swf">
<PARAM NAME=quality VALUE=high>
<PARAM NAME=bgcolor VALUE=#FFFFFF>
<EMBED
src="index.swf"
WIDTH=750
HEIGHT=800
quality=high
bgcolor=#FFFFFF
TYPE="application/x-shockwave-flash"
PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?
P1_Prod_Version=ShockwaveFlash" name="movie"
>
</EMBED>
</OBJECT>
</body>
</html>

これで、現在のスクロール位置が_level0.keitaiという変数に入る
ことになるはずです。あとは、_level0.keitaiの値を元に、ナビゲーションの
ムービークリップの位置を移動してやればできるのではないかと。


----------------
Tonpoo (a.k.a. gaienboy)
Tonpoo.com / TONPOOBLOG / twitter@tonpootwit

(1) 2 »
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops