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

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

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

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

jQuery

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

Q&A

解決済

1回答

393閲覧

jQueryのループが分かりません。

Gakut

総合スコア7

JavaScript

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

jQuery

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

0グッド

0クリップ

投稿2020/07/11 06:13

前提・実現したいこと

下のコードでは、ページをクリックすると次のページにいきます。ボタン('.button')をクリックして次のページに行くにはどうすれば良いでしょうか?

該当のソースコード

JavaScript

1<!DOCTYPE html> 2<html> 3 4 5<style> 6.page:nth-child(n+2){display:none;} 7.button{ 8 height:50px; 9 width:50px; 10 background-color:blue; 11} 12</style> 13<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 14<script> 15$(function(){ 16 $('.page').on('click',function(){ 17 var idx=$('.page').index(this); 18 $(this).fadeOut().queue(function(){ 19 $('.page').eq(idx+1).fadeIn().dequeue(); 20 }); 21 }); 22}); 23</script> 24<div id="page1" class="page"> 25 <h1>page1</h1> 26 <div class="button"></div> 27</div> 28<div id="page2" class="page"> 29 <h1>page2</h1> 30 <div class="button"></div> 31</div> 32<div id="page3" class="page"> 33 <h1>page3</h1> 34 <div class="button"></div> 35</div> 36<div id="page4" class="page"> 37 <h1>page4</h1> 38 <div class="button"></div> 39</div> 40<div id="page5" class="page"> 41 <h1>page5</h1> 42</div>

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

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

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

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

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

yambejp

2020/07/11 06:33

前の質問閉じてないのでそっちに返答してあります 同じ内容を挙げないほうがよいですよ
guest

回答1

0

自己解決

https://teratail.com/questions/276781で解決しました。同じ質問を二回してしまいました。ごめんなさい。
以下が解決方法になります。

javascript

1$(function(){ 2 $('.button').on('click',function(){ 3 var idx=$('.page').index($(this).closest('.page')); 4 $('.page').eq(idx).fadeOut().queue(function(){ 5 $('.page').eq(idx+1).fadeIn().dequeue(); 6 }); 7 }); 8});

idxに.indexで".page"の順番を入れる。.parentではなく.closestで押した".button"の親要素を取得。
.eqで”.page”の順番を数え"idx"を当てはめて、fadeOutで消す。

投稿2020/07/13 00:10

Gakut

総合スコア7

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問