
jQueryにて現在表示しているURLにあわせてCSSを追加する方法を教えてください。
現在、HTMLを
<ul id="#menu">
<li id="#menu_home"><a href="/index.html">HOME</a></li>
<li id="#menu_1"><a href="menu_1/foo.html">MENU_1</a></li>
<li id="#menu_2"><a href="menu_2/bar.html">MENU_2</a></li>
<li id="#menu_3"><a href="menu_3/com.html">MENU_3</a></li>
</ul>
のように組んでいます。
ローカルホスト上で開発テストしているので、URLは「http://localhost/~」となります。
現在表示しているURLにあわせて、たとえば、HOMEを表示している際には、
<li id="#menu_home"><a href="/index.html" class="active">HOME</a></li>
のようにCSSクラスをjQueryにて実現する方法を探しています。
JavaScriptで実現する方法はあるようなのですが、jQueryで実現できないかと試行錯誤しているものの、うまく行きません。
できる限りシンプルにしたいためjQueryやAjaxのプラグインは避けたいです。
どなたかお知恵を拝借できないでしょうか?
何卒よろしくお願いします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
jQueryだけで簡単にできます。
<ul id="menu">
<li id="menu_home"><a href="/index.html">HOME</a></li>
<li id="menu_1"><a href="menu_1/foo.html">MENU_1</a></li>
<li id="menu_2"><a href="/JQtest8.htm">MENU_2</a></li>
<li id="menu_3"><a href="menu_3/com.html">MENU_3</a></li>
</ul>
に対して
$(function(){
$("#menu li a").each(function(){
if($(this).attr("href")==location.pathname)
$(this).toggleClass("active");
});
});
この回答への補足
早々のご回答ありがとうございます。
いま試してみたところ、#menu li a hrefで指定しているページを表示している際はうまくいきました。しかし、menu_1/1st.htmlやmenu_1/2nd.htmlなどではうまくCSSクラスが付与されていないようです。これらにも対応するにはどうしたら良いでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
質問に答えていくと、回答によ...
-
2階層のメニューを作ってjQuery...
-
アコーディオンメニューが開い...
-
textareaに画像を表示したい
-
MAX関数を使ってからLEFT JOIN...
-
Nivo Sliderのエフェクトについて
-
Javascriptで指定した日付と時...
-
libjpegライブラリの使い方につ...
-
Dreamweaverで正規表現
-
-UWSC:IEで自動クリック-
-
Excel VBAに翻訳して頂けません...
-
window.openで値の渡し方を教え...
-
c++std::string型をTCHARに変換...
-
オンマウスで流れる文字
-
JQueryのプラグインに関して
-
OpenCVで固定枠で画像を操作す...
-
スライダーを実装した場合、ペ...
-
javascriptでpostした値が取得...
-
文字をクリックしたら別の文字...
-
小さい写真にマウス置くと拡大...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ネストされたチェックボックス...
-
jqueryのsortableで一部ソート...
-
jQueryでネスト構造の<li>がク...
-
jQueryでタブ切り替え
-
【jQuery】遅延実行(タイムラ...
-
jQuery appendの中身の出力につ...
-
javascript テキストエリアを1...
-
javascriptでEnterキーをtabキ...
-
「jQuery」アコーディオンメニ...
-
【jQuery】hoverしたn秒後にイ...
-
タグの表示順を入れ替え、
-
JQueryリストタグへのページネ...
-
id付きのHTMLテキストを変更→元...
-
特定のクラスを持つ<li>を非表...
-
jqueryのプラグインflexslider...
-
DOM の 要素の数え方について
-
jquery ドロップダウンメニュー...
-
【javascript で動的に a タグ...
-
同一ページ内で、任意の文字列...
-
【jQuery】ナビゲーションにhov...
おすすめ情報