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

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

新規登録して質問してみよう
ただいま回答率
85.35%
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

解決済

2回答

1085閲覧

jQueryのsetIntervalが動作しない

toyo_69

総合スコア20

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クリップ

投稿2020/11/25 14:34

ポートフォリオサイトの製作中です。長時間調べても解決できない問題が発生しました。
サイトを開いた瞬間からangleアイコンをjQueryで繰り返しフェードインをさせようと以下のようにしましたが無反応で動作しません。どなたかご教授お願いします。jQueryのバージョンは3.5.1です。公式サイトからダウンロードしてファイルに入れて読み込んでます。

jQuery

1(function($) { 2 $(function() { 3 let $element = $("#fadeInIcon"); 4 setInterval(function() { 5 $element.fadeIn(500); 6 }, 1000); 7 }); 8})(jQuery);

※jQueryのファイル名はrepeat_jquery.js

html

1〜省略〜 2<span class="fas fa-angle-down" id="fadeInIcon"></span> 3〜省略〜 4</footer> 5<!--jQuery(3.5.1)の読み込み--> 6<script src="./_common/scripts/jquery-3.5.1.min.js"></script> 7<script type="text/javascript" src="./repeat_jquery.js"></script> 8</body> 9</html>

※HTMLは前後割愛。

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

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

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

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

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

miyabi_takatsuk

2020/11/25 14:38

setInterval(function() { の中で、console.logなどで、中を通っているかは確認しましたか?
cerfweb

2020/11/25 14:52

「無反応で動作しない」というのは、まったく現れないという意味ですか、現れたり消えたりしないという意味ですか。
toyo_69

2020/11/25 15:19

大変分かりづらい表現をしておりました。失礼いたしました。 setIntervalの中でwindow.alertを実行したところ、指定した時間間隔で繰り返しウィンドウアラートが表示されました。なのでやはりsetIntervalが動いてくれていないみたいです。 cerfweb様のご指摘に関しましては、アイコンは表示されているのですが、期待している動作のフェードインをしてくれない、という状況です。
guest

回答2

0

まず、fontawesomeを組み込めてるかどうか確認してみてください。
fontawesomeのcss用のlink要素をhtmlに記述してますか?
ページを開いたときに、angleアイコンは見えてますか?

また、フェイドインさせたいなら、まずはアイコンを非表示にしておかないと、変化が分からないですよね? ページのロード時に、$element.hide()しましょう。

そして、500msecかけてフェイドインしたあとで、また非表示にしたいので、

javascript

1$element.fadeIn(500, function(){ $(this).hide(); });

って感じでどうでしょうか。

投稿2020/11/25 15:19

gpsoft

総合スコア1323

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

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

toyo_69

2020/11/25 16:42

fadeInが対象としている要素が消えている状態でないと目視で確認できないということを知りませんでした。また、gpsoft様の$element.hideだと私の都合上、上にあった要素が落ちてきてしまいガタガタになってしまったので、今回はベストアンサーを他の方に付けさせていただきました。ここまでお付き合いくださり、ありがとうございました。
guest

0

ベストアンサー

消していないから消えないということですね。

jQuery

1// setIntervalの中 2 $element.fadeIn(500, function(){ 3 $element.fadeOut(500); 4 });

html

1<span class="fas fa-angle-down" id="fadeInIcon" style="display: none;"></span>

とすればいいのではないでしょうか。

投稿2020/11/25 15:44

cerfweb

総合スコア1907

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

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

toyo_69

2020/11/25 16:34

HTMLの方を記述してしまうと要素のスペースごと無くなってしまい、こちらの事情ですがサイトを開いた瞬間アイコンの上に乗っかっていた要素が落ちてきてしまったのでHTMLのstyleの変更はせずに実行すると期待通りに動作いたしました。 以前背景画像に対してフェードインさせた時、opacityを使っており背景画像を初めから消してなくてもフェードインできたのでopacityを使ったフェードインとの仕様の違いについて勘違いしておりました。 fadeInは対象の要素が元々消えている状態でなければ実際の変化が目視できず、fadeOutは要素が消えた後は要素自体の大きさも無くなってしまうということを理解することができました。 ここまでお付き合いいただき、ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問