前提
こちらのサイト(https://coco-factory.jp/ugokuweb/move02/8-11/)
の1文字ずつ表示させるアニメーションを、3つの文章に時間差をつけて使いたいのですが、同時に始まってしまいどのようにすれば良いかがわかりません。
animation-delay:をつけてみましたが、効かなかったです。

回答1件
あなたの回答
tips
プレビュー
jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。
HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。
CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。
jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。
HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。
CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。
0グッド
2クリップ
投稿2022/08/28 04:51
こちらのサイト(https://coco-factory.jp/ugokuweb/move02/8-11/)
の1文字ずつ表示させるアニメーションを、3つの文章に時間差をつけて使いたいのですが、同時に始まってしまいどのようにすれば良いかがわかりません。
animation-delay:をつけてみましたが、効かなかったです。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答1件
0
ベストアンサー
.eachTextAnimeの要素にdate属性で、遅延秒数を設定しておいて、
html
1<p class="eachTextAnime" data-delay="0">テキストが1文字ずつ出てきます</p> 2<p class="eachTextAnime" data-delay="1">テキストが1文字ずつ出てきます</p> 3<p class="eachTextAnime" data-delay="2">テキストが1文字ずつ出てきます</p>
JSの方で、animation-delay: にこの遅延秒数を加算すればどうでしょう。
js/jQuery
1// 画面をスクロールをしたら動かしたい場合の記述 2$(window).scroll(function () { 3 EachTextAnimeControl();/* アニメーション用の関数を呼ぶ*/ 4});// ここまで画面をスクロールをしたら動かしたい場合の記述 5 6// 画面が読み込まれたらすぐに動かしたい場合の記述 7$(window).on('load', function () { 8 //spanタグを追加する 9 var element = $(".eachTextAnime"); 10 11 element.each(function () { 12 var delay = Number($(this).data('delay')); 13 var text = $(this).text(); 14 var textbox = ""; 15 text.split('').forEach(function (t, i) { 16 if (t !== " ") { 17 var d = i / 10 + delay; 18 textbox += '<span style="animation-delay:' + d + 's;">' + t + '</span>'; 19 } else { 20 textbox += t; 21 } 22 }); 23 $(this).html(textbox); 24 }); 25 26 EachTextAnimeControl();/* アニメーション用の関数を呼ぶ*/ 27});// ここまで画面が読み込まれたらすぐに動かしたい場合の記述
投稿2022/08/28 06:02
総合スコア34367
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/08/28 06:21