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

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

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

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

jQuery

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

HTML

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

CSS

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

Q&A

解決済

1回答

637閲覧

jQuery タブの切り替えでfadeの動きを付けたい

yukabyo

総合スコア135

JavaScript

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

jQuery

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

HTML

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

CSS

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

0グッド

0クリップ

投稿2017/08/05 05:46

マウスオーバーでタブの切り替えをしました。
マウスオーバーでコンテンツが切り替わる際にそのまま切り替わるのではなく
fadein fadeoutの、ふわっとした動きを付けたいのですが
ここからどのように付け足せば良いでしょうか。

よろしくお願い致します。

実装したものがこちらです

html

1 <ul id="tab" class="clearfix"> 2 <li class="select"><a href="/page1/">1</a></li> 3 <li><a href="/page2/">2</a></li> 4 <li><a href="/page3/">3</a></li> 5 <li><a href="/page4/">4</a></li> 6 <li><a href="/page5/">5</a></li> 7 </ul> 8 <div class="content_wrap"> 9コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1 10 </div> 11 <div class="content_wrap disnon"> 12コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2 13 </div> 14 <div class="content_wrap disnon"> 15コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3 16 </div> 17 <div class="content_wrap disnon"> 18コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4 19 </div> 20 <div class="content_wrap disnon"> 21コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5 22 </div>

css

1 .disnon { 2 display: none; 3 }

javascript

1 $(function() { 2 $("#tab li").hover(function() { 3 var num = $("#tab li").index(this); 4 $(".content_wrap").addClass('disnon'); 5 $(".content_wrap").eq(num).removeClass('disnon'); 6 $("#tab li").removeClass('select'); 7 $(this).addClass('select') 8 }); 9 });

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

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

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

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

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

kei344

2017/08/05 05:48

CSSが質問文に提示されているものだけでは状態が再現できません。追記していただけませんか?
kei344

2017/08/05 06:26

質問文には文字数制限で入りませんか?
yukabyo

2017/08/05 07:11

質問文とリンク先の内容は同じになっており、質問文内にもリンクを入れておりますが、リンクの飛び先では動きが確認できていたので、質問文に何を追記すればいいのかわからず、申し訳ありません。また、今回は先程別の方が下さった回答で解決できそうです。kei様いつもご回答くださりありがとうございます。
guest

回答1

0

ベストアンサー

CSSのtransition指定を使えばフェードイン・フェードアウトはクラスの付け外しだけで実現可能です。
display:noneによる非表示はtransition効果をつけれませんので、opacityを変化させてフェードアウトさせ、transitionendイベントのタイミングで消します。
フェード中は同じ位置にコンテンツが重なっていないといけないので、position:absoluteも利用します。

html

1<ul id="tab" class="clearfix"> 2 <li class="select"><a href="/page1/">1</a></li> 3 <li><a href="/page2/">2</a></li> 4 <li><a href="/page3/">3</a></li> 5 <li><a href="/page4/">4</a></li> 6 <li><a href="/page5/">5</a></li> 7</ul> 8<div class='area'> 9 <div class="content_wrap"> 10コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1コンテンツ1 11 </div> 12 <div class="content_wrap disnon"> 13コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2コンテンツ2 14 </div> 15 <div class="content_wrap disnon"> 16コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3コンテンツ3 17 </div> 18 <div class="content_wrap disnon"> 19コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4コンテンツ4 20 </div> 21 <div class="content_wrap disnon"> 22コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5コンテンツ5 23 </div> 24</div>

css

1.disnon { 2 opacity: 0; 3} 4.area { 5 position :relative; 6} 7.content_wrap{ 8 position : absolute; 9 top : 0px; 10 transition: 300ms ease-out; 11}

javascript

1$(function() { 2 $("#tab li").hover(function() { 3 var num = $("#tab li").index(this); 4 $(".content_wrap").addClass('disnon'); 5 $(".content_wrap").eq(num).removeClass('disnon').show(); 6 $("#tab li").removeClass('select'); 7 $(this).addClass('select') 8 }); 9 $(".content_wrap").on("transitionend",function(){ 10 if ($(this).hasClass("disnon")){ 11 $(this).hide(); 12 } 13 }); 14});

投稿2017/08/05 07:00

zohnam

総合スコア1441

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

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

yukabyo

2017/08/05 07:13

とてもわかりやすい説明で理解できました。 こちらのコードでできましたので、使わせていただきます。 ご回答くださりありがとうございます!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問