質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

566閲覧

複数のメニューバーにカレント表示させたい

erp

総合スコア46

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2020/12/15 12:24

編集2020/12/15 12:27

前提・実現したいこと

タブメニューのメニュバーを三カ所に表示させています。メニューアイコンをクリックしたときに同時に押下したものと同じアイコンに色を付けたいのですが、できません。何が違うのかご教示ください。

発生している問題・エラーメッセージ

なし

該当のソースコード

javascript

1// caption tab 2$(".caption nav ul li").on('click', function () { 3 $('.caption nav ul li').removeClass("ac"); 4 $(this).addClass("ac"); 5 var id=$(this).attr('class').split(" ")[0]; // 初めのclass取得 6 $('.caption--wrp > div').removeClass('ac').fadeOut(450); 7 $('.'+id+'_cnt').addClass('ac').fadeIn(450); 8 })

html

1<link rel="stylesheet" href="https://cdn.linearicons.com/free/1.0.0/icon-font.min.css" media="print" onload="this.media='all'"> 2 3// 4 5<div class="caption"> 6 <nav> 7 <ul> 8 <li class="tab1 ac"><span class="lnr lnr-pencil"></span>info</li> 9 <li class="tab2"><span class="lnr lnr-file-empty"></span>pages</li> 10 <li class="tab3"><span class="lnr lnr-cog"></span>set</li> 11 <li class="tab4"><span class="lnr lnr-download"></span>code</li> 12 <li class="tab5"><span class="lnr lnr-bookmark"></span>bkm</li> 13 </ul> 14 </nav> 15 <div class="caption--wrp id="caption"> 16 <div class="tab1_cont ac"> 17    あああ 18 </div> 19 <div class="tab2_cont"> 20    いいい 21 </div> 22 <div class="tab3_cont"> 23    ううう 24 </div> 25 <div class="tab4_cont"> 26    えええ 27 </div> 28 <div class="tab5_cont"> 29    おおお 30 </div> 31 </div> 32 <nav> 33 <ul> 34 <li class="tab1 ac"><span class="lnr lnr-pencil"></span>info</li> 35 <li class="tab2"><span class="lnr lnr-file-empty"></span>pages</li> 36 <li class="tab3"><span class="lnr lnr-cog"></span>set</li> 37 <li class="tab4"><span class="lnr lnr-download"></span>code</li> 38 <li class="tab5"><span class="lnr lnr-bookmark"></span>bkm</li> 39 </ul> 40 </nav> 41</div>

css

1/* caption wapper */ 2.caption--wrp > div { 3 display: none; 4 margin: 4rem 0; 5 width: 100%; 6} 7.caption--wrp div.ac { 8 display: block; 9} 10.caption nav ul li span { 11 font-size: 3rem; 12 cursor: pointer; 13} 14.caption nav ul li { 15 text-align: center; 16 text-transform: uppercase; 17} 18.caption nav ul li a { 19 border: none; 20 color: red; 21} 22.caption nav ul li span { 23 font-size: 2rem; 24} 25.caption nav ul li.ac span, .caption nav ul li.ac { 26 color: darkblue; 27} 28.caption nav ul li span { 29 display: block; 30}

試したこと

javascript

1var n = document.querySelector('#caption > div') 2if( n.className == 'ac' ) { 3 var e = n.classList.item(1), 4 a = e.replace( /_cnt/g , '' ) ; 5 6 $('.'+a).addClass('ac'); 7}

同時にclass="ac"をつけたいのですができませんでした。

補足情報(FW/ツールのバージョンなど)

Chrome最新版、Safari604.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

JavaScript

1var id=$(this).attr('class').split(" ")[0]; // 初めのclass取得 2 $('.'+id).addClass('ac');

でできました。

投稿2020/12/15 12:59

erp

総合スコア46

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問