W i S T E R I A

B O A R D
 
●新規 ●トレリス表示 ●一覧表示 ●ログ検索 ●ヘルプ ●ホームへ
●関連記事の一覧

219
ツリー式展開メニュー(基本動作部分)で by 2007/09/07 (Fri) 17:11
△up
res/edit
 
はじめまして、空と申します。
JavascriptもDHTMLも初心者で、どうしたら良いのかわからないので是非ご教授いただきたいのですが・・・。

展開・収納する際に、パッと切り替わるのではなく、スライドしながらの展開・収納にしたいと思っています。
なにか良い方法はありますでしょうか。
220
Re1:ツリー式展開メニュー(基本動作部分)で by 管理人 2007/09/07 (Fri) 21:17
△up
res/edit
admin
 
こんばんわ、管理人です。

どのように「スライド」させたいのか、そのイメージによって変わるかと。

ただ、一般的には、そういった場合にはFlashで作ることが多いように思います。
(JavaScriptで作れない訳じゃありませんが、イメージどおりの動きになるように調整するのは結構面倒かも)

ちなみに、上下幅(改行高さ)方向の「スライド」であれば、たとえばCSSで言うところの font-size と line-height(もしくは margin / padding ) を段階的に増減すれば、可能なように思います。

または、クリックと同時にブロック高さ分だけ開閉しておいて、画面左からスライドしてメニュー位置に移動してくる、というのであれば、掲載済みのスクリプトを組み合わせれば可能でしょう。

いずれにせよ、まずは、どのように動かしたいのか、そのイメージが固まらないと、何を調整することでスライドしているように見せるのかが変わってきますので・・・。
221
Re2:ツリー式展開メニュー(基本動作部分)で by 2007/09/08 (Sat) 05:51
△up
res/edit
 
お返事ありがとうございます。

スライドさせたいのは上下方向だけです。
管理人様の仰る、上下幅方向のスライドが近いのだと思います。


例えば、そのページを開いた時に

■■メニュー1■■■■■
内容a内容a内容a内容a内容
内容b内容b内容b内容b内容
■■メニュー2■■■■■
■■メニュー3■■■■■

だとすると、展開メニューをそのまま使った場合、メニュー2クリックで一気に内容abとも消えて、メニュー1とメニュー2の間がなくなって、メニュー2の下にある文章が表示(展開)されますよね。
それを、メニュー2をクリックで、メニュー1の下にある「内容b」、「内容a」の順に■メニュー2■■で隠れていきつつ、メニュー2の下にある内容がabc・・・と現れる、というイメージなんです。
(説明が下手で申し訳ありません)

メニューリンクの行(例えばh2など)を数ピクセルずつ上下に移動させる感じにしたら良いのかな?とは思うのですが・・・。
あちこちでスクリプトのサンプルなどを見たのですが、どう応用していいのか、さっぱりわからないのです。
お忙しいとは思いますが、アドバイス宜しくお願いいたします。
222
Re3:ツリー式展開メニュー(基本動作部分)で by 管理人 2007/09/08 (Sat) 08:49
△up
res/edit
admin
 
そういうイメージであれば、個々のメニュー画像で作ったほうが良いでしょう。
文字(テキスト)の状態では、「隠れる」は出来ません。上下に重なったときに、上の文字と下の文字が重なって読めなくなるだけです。
それぞれのメニューを画像で作り、重なり順(zIndex)を調整した後、y方向にずらして行くことで、ご希望の動作になるかと。

ご参考まで
223
Re4:ツリー式展開メニュー(基本動作部分)で by 2007/09/08 (Sat) 10:00
△up
res/edit
 
なるほど、画像のほうが良いのですね。
もう少し模索してみます。

お忙しい中、良いアドバイスをありがとうございました。
p.ink