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

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

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

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

1回答

1051閲覧

jQueryでTogglable Tagの実装について

yamady

総合スコア176

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2016/03/28 07:36

BootstrapのTogglable TagにあるようなあるようなタグをjQueryで実装したいのですが、できずに困っています。。(押したら反応するところまではできたのですが、そこから【一回動作した後に、別タグ・あるいは前のタグを押した時に反応するように】したいです。

全く別のやり方でも試してみたいので、よろしくお願いします。

下記のIndiegogoにある「Top pick for you 」からはじまるタグが理想ですね!
https://www.indiegogo.com/#

html

1 <nav class='global-nav'> 2 <ul class='nav-index'> 3 <li><a class='nav-category'>BLUE</a></li> 4 <li><a class='nav-category'>RED</a></li> 5 <li><a class='nav-category'>BLACK</a></li> 6 <li><a class='nav-category'>YELLOW</a></li> 7 <li><a class='nav-category'>GREEN</a></li> 8 <li><a class='nav-category'>WHITE</a></li> 9 </ul> 10 </nav> 11 12 <div id ='red'> 13 </div> 14 15 <div id='blue'> 16 </div>

jQuery

1 $(document).ready(function() { 2 console.log( "ready!" ); 3 $('.nav-category').click(function (e) { 4 //$('#blue').hide(50, function(){ 5 //$('#red').show(300); 6 //}); 7 $('#blue').animate({ 8 opacity: 0 9 }, 200, function(){ 10 $('#blue').css('display', 'none'); 11 $('#red').css('display', 'block'); 12 $('#red').animate({ 13 opacity: 1 14 }, 300); 15 }); 16 }) 17 });

よろしくお願いします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

「タブの切り替え」のことでしょうか?
表示するコンテンツに共通のcontentsのクラス名を付与していますが、最初に表示されているblue以外のコンテンツに「hide」というクラス名を付与しておきます。(.hide{opacity: 0;})

最初にコンテンツが表示されている箇所に該当するタブの部分にselectを付与してあります。(選択中ということがわかるように)

HTML

1<nav class='global-nav'> 2 <ul class='nav-index'> 3 <li class="select"><a class='nav-category'>BLUE</a></li> 4 <li><a class='nav-category'>RED</a></li> 5 <li><a class='nav-category'>BLACK</a></li> 6 <li><a class='nav-category'>YELLOW</a></li> 7 <li><a class='nav-category'>GREEN</a></li> 8 <li><a class='nav-category'>WHITE</a></li> 9 </ul> 10 </nav> 11 12<div id='blue' class="contents"> 13最初から表示されている 14 </div> 15 16<div id ='red' class="contents hide"> 17切り替え後表示できる 18 </div> 19

JavaScript

1$(function(){ 2 $(".nav-index li").on("click" , function(){ // リストをクリックしたら(aにdisplay: block;) 3 var num = $(".nav-index li").index(this); // 押された番号取得 4 $(".contents").fadeOut(); // 一度コンテンツ非表示 5 $(".content").eq(num).fadeIn(); // 押されたタブに該当するコンテンツをフェードイン 6 $(".nav-index li").removeClass('select'); // もともと選択されていたタブを解除 7 $(".nav-index li").eq(num).addClass('select'); // 押されたタブを選択 8 }); 9});

こちらで簡単なタブの切り替えが実装できるので、後はjQueryを使って調整すればいいかと思います。

※HTMLでは基本、属性値を囲む際は、「""ダブルクォーテーション」を用います。
また、タブの箇所にリンクは不要だと思います。

投稿2016/03/28 08:28

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

yamady

2016/03/28 20:24

posukeeさま、ご丁寧に回答いただきまして、誠にありがとうございます。 大変助かりました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問