CSSをはじめJavascriptの知識がなく勉強しているところなんですが、”CSS Lectureさん”の『Mootools プルダウンナビゲーション』を使用したくまず新規のファイルを作って解説通りにコピー&ペーストをしたのですがデモページのようにうまくできません。
URL:http://www.css-lecture.com/log/javascript/043.html
scriptは<head>~</head>の間に入れ、XHTMLのタグは<body>~</body>に入れ、CSSは<head>~</head>の間に<style type="text/css">~</style>として入れました。※外部CSSでも試しました。
まだまだ知識不足で上記の記載自体が間違っていましたらすいません。
申し訳ございませんがどなた詳しい方お教え頂けないでしょうか。
また最終的には横並びのメニューを縦に並べて水平に展開するにできればと思っております。参考のコードを書き換えることで縦並びにすることも可能かも合わせてお教え頂ければ幸いです。
複数の質問をし勝手ではございますがどうぞ宜しくお願い致します。
No.4ベストアンサー
- 回答日時:
三角画像を右クリックして保存したものは、メニューのコードを記述しているHTMLと同じ所(同じフォルダ)に置いてください。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitio …
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<link rel="stylesheet" type="text/css" href="ddsmoothmenu.css" />
<link rel="stylesheet" type="text/css" href="ddsmoothmenu-v.css" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.2. …
<script type="text/javascript" src="ddsmoothmenu.js">
</script>
<script type="text/javascript">
ddsmoothmenu.init({
mainmenuid: "smoothmenu2", //Menu DIV id
orientation: 'v', //Horizontal or vertical menu: Set to "h" or "v"
classname: 'ddsmoothmenu-v', //class added to menu's outer DIV
//customtheme: ["#804000", "#482400"],
contentsource: "markup" //"markup" or ["container_id", "path_to_menu_file"]
})
</script>
</head><body>
<h2 style="margin-top:20px">Example 2</h2>
<div id="smoothmenu2" class="ddsmoothmenu-v">
<ul>
<li><a href="http://www.dynamicdrive.com">Item 1</a></li>
<li><a href="#">Folder 0</a>
<ul>
<li><a href="#">Sub Item 1.1</a></li>
<li><a href="#">Sub Item 1.2</a></li>
<li><a href="#">Sub Item 1.3</a></li>
<li><a href="#">Sub Item 1.4</a></li>
<li><a href="#">Sub Item 1.2</a></li>
<li><a href="#">Sub Item 1.3</a></li>
<li><a href="#">Sub Item 1.4</a></li>
</ul>
</li>
<li><a href="#">Folder 1</a>
<ul>
<li><a href="#">Sub Item 1.1</a></li>
<li><a href="#">Sub Item 1.2</a></li>
<li><a href="#">Sub Item 1.3</a></li>
<li><a href="#">Sub Item 1.4</a></li>
<li><a href="#">Sub Item 1.2</a></li>
<li><a href="#">Sub Item 1.3</a></li>
<li><a href="#">Sub Item 1.4</a></li>
</ul>
</li>
<li><a href="#">Item 3</a></li>
<li><a href="#">Folder 2</a>
<ul>
<li><a href="#">Sub Item 2.1</a></li>
<li><a href="#">Folder 2.1</a>
<ul>
<li><a href="#">Sub Item 2.1.1</a></li>
<li><a href="#">Sub Item 2.1.2</a></li>
<li><a href="#">Folder 3.1.1</a>
<ul>
<li><a href="#">Sub Item 3.1.1.1</a></li>
<li><a href="#">Sub Item 3.1.1.2</a></li>
<li><a href="#">Sub Item 3.1.1.3</a></li>
<li><a href="#">Sub Item 3.1.1.4</a></li>
<li><a href="#">Sub Item 3.1.1.5</a></li>
</ul>
</li>
<li><a href="#">Sub Item 2.1.4</a></li>
</ul>
</li>
</ul>
</li>
<li><a href="http://www.dynamicdrive.com/style/">Item 4</a></li>
</ul>
<br style="clear: left" />
</div>
</body></head>
skyfangさん、本当にありがとうございます。
メニューのコードに画像を置く所はかなり苦戦しましたが何とかサンプルと同じように表示できるようになりました。
自分のHP用に編集できるかは微妙な所ですが、教えて頂いたことが無駄にならないように勉強しながら頑張りたいと思います。
お忙しい中数日に渡りお付き合いくださり本当にありがとうございました。やりたいことをイメージ通りに表現できるようになるために少しずつCSS、Javascriptなどを理解できるように頑張ります。
重ね重ねですがこの度はこんな知識のない私にご丁寧にご回答頂きまして本当にありがとうございました。感謝致しております。
No.3
- 回答日時:
作りたいのは以下のページのようなメニューで良いのでしょうかね?
[参考]Dynamic Drive DHTML Scripts- Smooth Navigational Menu
http://www.dynamicdrive.com/dynamicindex1/ddsmoo …
この度もご回答頂きましてありがとうございます。
ご参考ページにありますようなメニューで間違いないです。
教えて頂きましたメニューも練習の為に自分なりに試してみました、両方を同時に記述した際にはしっかりと両メニューとも動作できるように表示できたのですが(三角の画像は入れられておりません。)、やりたい方のddsmoothmenu-vのパターンのみを表示した際に何故かオンマウスをすると第1階層のメニューも上下に動くようなものになったり、▶(右向き三角)の画像を入れる場所がわかないなど本当に知識のなさを痛感いたします。
【script部分】
ddsmoothmenu.init({
mainmenuid: "smoothmenu1", //menu DIV id
orientation: 'h', //Horizontal or vertical menu: Set to "h" or "v"
classname: 'ddsmoothmenu', //class added to menu's outer DIV
//customtheme: ["#1c5a80", "#18374a"],
contentsource: "markup" //"markup" or ["container_id", "path_to_menu_file"]
})
を削除し
【CSS・XHTML部分ともに】
ddsmoothmenu-vの部分をコピペ致しました。
このような私に数日もお付き合い頂き本当に感謝致しております。
並びに毎度ご回答頂きましたこと+αご質問を付け加えてしまい申し訳ございません。
No.2
- 回答日時:
#navi li ul li {
position:absolute;
top:0px;
left:150px;
}
それだと表示位置が左から150pxの位置固定になるので、項目一つしか出ませんよ。
メニューの項目数分、項目の幅分ずらしながら表示する必要があります。
それぞれの項目に対し、150px、300px、450px・・・と表示位置を個別に指定する必要がありますね。(項目幅が150pxとした場合の数値です。)
<ul class"navi">
<li style="left: 150px;">項目1</li>
<li style="left: 300px;">項目2</li>
<li style="left: 450px;">項目3</li>
:
:
</ul>
naviのクラス属性は生きたままで、個別にしていしたstyle属性が優先されるので、naviのクラス情報を引き継いだまま、一部分のスタイルのみ個別スタイルで指定する、という手法になります。
なので、position:absolute;等は各liに引き継がれます。
再度ご回答頂きまして本当にありがとうございます。
説明不足で申し訳ありません。
menu1にオンマウスをした際に
menu1-リンク1-リンク2
と展開するのではなく
menu1-リンク1
-リンク2
としたかったんです。
ですがskyfangさんに教えて頂いたように
<li style="left:150px">項目1</li>
<li style="left:300px">項目2</li>
を適用することで横表示にできました。
このパターンで表示した際にオンマウスをしたら展開するのではなく最初から展開しておりました。
もしかしまして今回利用しているjavascriptが上下にアニメーションするだけの仕様になっているものなのでしょうか。
度々ご質問ばかりで申し訳ございません。
No.1
- 回答日時:
以下のページの「download script」をクリックしてダウンロードしたものを修正して使用しているのでしょうか?
[参考]JavaScript drop down menu using Mootools 1.2
http://www.php-help.ro/mootools-12-javascript-ex …
それとも、貴方が提示してあるURLの解説サイトに記載のコードをコピペして動かそうとしているのでしょうか?
後者であるなら、前述の配布サイトの方から一式落としてこないと、そもそも動きませんよ。
解説サイトに記載のコードは、配布サイトで配布されているスクリプト部品がある事を前提にした、HTML部分の解説だけですから。(必要な物のうち、自分で書き換えて使うであろう部分の解説のみ。)
ご丁寧なご回答ありがとうございます。
skyfang様のおかげで
<script language="javascript" type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/mootools/1. … "></script>
と最初のscriptはコピペで良い所までダウンロードしていましたmootools-yui-compressed.jsを挿入していることに気付きました。
src="http~で記載するやり方とjsファイルを挿入するやり方の違いがまだ理解できていませんが何とか動作することができました。
このような初歩的なミスをしてしまうレベルの私でも理解できるようにご丁寧にご回答して頂き本当にありがとうございます。
あともし宜しければ縦に配置して水平に展開するようにできるかもお教え頂けないでしょうか。
自分なりに試みてみたのですが
#navi {
position: relative;
に書き換えて
#navi li {
float:left;
をけして、縦に配置はでき、
#navi li ul li {
position:absolute;
top:0px;
left:150px;
で横に一部だけ出すことはできたのですが展開することができませんでした。
お時間があるときにで宜しいのでお教え頂ければ幸いです。
ご回答頂けた上にさらに質問をして申し訳ございませんがどうぞ宜しくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
リストマーカーをボックス内に...
-
疑似クラス :activeが効きません
-
HTMLでメニューをリストで書き...
-
(HP作成)メニューバーのプル...
-
箇条書きがずれて表示されてし...
-
<ul>~</ul>が二つ続くと間に改...
-
文法チェックの<A>と</A>の間が...
-
ドロップダウンの残像
-
SWIFTでHtmlのソースの一部を取得
-
bxsliderの画像が左によってしまう
-
画像を縦に4つ並べたい場合
-
リンク文字同士の間隔を開ける...
-
display:table;を多段表示させたい
-
<table>の高さ固定。情報増加時...
-
HTMLを教えてください。選...
-
HTMLで組織図を作成する方法
-
htmlの表について、こんな表を...
-
html <li>の中の文字一部に色を...
-
番号付きリスト(<Ol><Li>・・...
-
画像がかなり大ので全体的に1/...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
html/cssの、navを2段にする...
-
リストマーカーをボックス内に...
-
リストの数字のフォントサイズ...
-
<ul><li></li></ul>にするメリ...
-
ulタグやliタグの中でbrタグ...
-
レスポンシブWebデザインでリン...
-
<ul>~</ul>が二つ続くと間に改...
-
HTML5のfooterに見出しを付けて...
-
htmlの<ol>タグで、数字などを...
-
ulとliで囲った文字の一部を変...
-
番号付きリスト(<Ol><Li>・・...
-
HTMLで組織図を作成する方法
-
複数行にまたがる括弧を表示し...
-
liタグの中に<p>タグやら<dl>を...
-
display:table;を多段表示させたい
-
divタグ内のコンテンツが重なっ...
-
<table>の高さ固定。情報増加時...
-
html <ul></ul>の並びで一行空...
-
テーブル内のプルダウンの下に...
-
【至急】ul li 行間調整ができ...
おすすめ情報