質問するログイン新規登録

Q&A

1回答

159閲覧

jQueryが反映されません

beta0503

総合スコア0

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

投稿2026/04/25 16:53

0

0

実現したいこと

jQueryのスライダーを実装したいです

発生している問題・分からないこと

コードを書いたのですが、サイトに反映されません。
「スライダー作成」のところから下のコードが反応しません。

エラーメッセージ

error

1エラーメッセージは出ません。

該当のソースコード

jQuery

1$(function () { 2 // 1. AOSの初期化(ここに入れることでHTML読み込み後に実行される) 3 AOS.init({ 4 offset: 100, // 要素がどれくらい見えたら実行するか 5 duration: 800, // アニメーションの時間 6 easing: 'ease-out', 7 once: true // 1回だけ実行 8 }); 9 10 //スムーススクロール 11 $("a[href^='#']:not([href='#'])").click(function () { 12 var target = $($(this).attr("href")).offset().top; 13 14 //70px減らす 15 target -= 70; 16 17 //ターゲットに移動 18 $("html,body").animate({ scrollTop: target }, 500); 19 return false; 20 }); 21 22 //フォームバリデーション 23 // 送信ボタンを変数に入れる 24 const $submitBtn = $('.fv-submit-btn'); 25 26 // フォーム内の入力が変わるたびにチェック 27 $('.fv-form input').on('change keyup', function () { 28 // 各項目の値を取得 29 let lastName = $('.fv-form input[placeholder="介護"]').val(); 30 let firstName = $('.fv-form input[placeholder="太郎"]').val(); 31 let company = $('.fv-form input[placeholder="株式会社CareSend"]').val(); 32 let email = $('.fv-form input[type="email"]').val(); 33 let tel = $('.fv-form input[type="tel"]').val(); 34 35 // すべてが空じゃないかチェック 36 if ( 37 lastName !== "" && 38 firstName !== "" && 39 company !== "" && 40 email !== "" && 41 tel !== "" 42 ) { 43 // 全部入ってたらボタンを活性化 44 $submitBtn.prop('disabled', false); 45 $submitBtn.css('opacity', '1'); // 見た目も「押せる感」を出す 46 } else { 47 // 一つでも空ならボタンを無効化 48 $submitBtn.prop('disabled', true); 49 $submitBtn.css('opacity', '0.5'); // 押せないときは薄くする 50 } 51 }); 52 53 //ボタンのテキスト変更 54 $('.fv-submit-btn').click(function () { 55 $(this).css('font-size', '16px'); 56 $(this).html("資料ダウンロードありがとうございました"); 57 }); 58 59 // --- スライダー作成 --- 60 var list = $('.logo-slider .slider-list'); 61 var item = $('.logo-slider .slider-item'); 62 63 // 1. 複製して2セットにする 64 list.append(item.clone()); 65 66 $(window).on('load', function () { 67 setTimeout(function () { 68 // 2. 1枚分の移動距離を正確に測る 69 var itemWidth = item.outerWidth(true); 70 71 // 【確認用】F12のコンソールに数字が出るかチェック 72 console.log('移動距離:', itemWidth); 73 74 // 3. 画像を一枚分動かす関数 75 function startScroll() { 76 list.animate({ "marginLeft": -itemWidth }, 3000, "linear", function () { 77 // 4. アニメーション終了後、先頭の子供を特定 78 var target = list.find('.slider-item:first-child'); 79 80 // 5. ターゲットを最後尾に移動(append) 81 list.append(target); 82 83 // 6. リストの左余白を0に戻す 84 list.css("marginLeft", 0); 85 86 // 7. ループ(自分自身をもう一度呼ぶ) 87 startScroll(); 88 }); 89 } 90 91 // 8. 実行 92 startScroll(); 93 }); 94 }); 95});

html

1<!--スライダー--> 2 <section class="logo-slider"> 3 <div class="inner"> 4 <h1 class="title" data-aos="fadeup"> 5 多くのお客様に選ばれ続けています 6 </h1> 7 <div class="img-area"> 8 <img src="images/jiseki 1.png" alt="実績の写真"> 9 <img src="images/jiseki-02 1.png" alt="実績の写真"> 10 </div> 11 <!--スライダー--> 12 <div class="slider-container"> 13 <ul class="slider-list"> 14 <li class="slider-item"><img src="images/logo01.png" alt="社名"></li> 15 <li class="slider-item"><img src="images/logo02.png" alt="社名"></li> 16 <li class="slider-item"><img src="images/logo03 1.png" alt="社名"></li> 17 <li class="slider-item"><img src="images/logo04 1.png" alt="社名"></li> 18 <li class="slider-item"><img src="images/logo05 1.png" alt="社名"></li> 19 </ul> 20 </div> 21 </div> 22 </section> 23

css

1/*スライダーセクション*/ 2.logo-slider { 3 padding-top: 80px; 4} 5 6.logo-slider .inner { 7 max-width: 1536px; 8 width: 100%; 9 margin: 0 auto; 10} 11.logo-slider .title { 12 font-size: 32px; 13 text-align: center; 14 margin-bottom: 40px; 15} 16 17.logo-slider .img-area { 18 display: flex; 19 align-items: center; 20 justify-content: center; 21 gap: 84px; 22 margin-bottom: 64px; 23} 24 25.logo-slider .img-area img{ 26 width: 428px; 27 height: auto; 28} 29 30/*スライド設定*/ 31.logo-slider .slider-container { 32 overflow: hidden; 33 width: 100%; 34} 35 36.logo-slider .slider-list { 37 display: flex; 38 margin: 0; 39 padding: 0; 40 list-style: none; 41 width: max-content; /* 中身のサイズを維持して横長に */ 42 min-width: 100%; /* ★これを追加! */ 43 position: relative; /* ★これもあると安心 */ 44} 45 46.logo-slider .slider-item { 47 width: 248px; /* 固定サイズ */ 48 height: 99px; 49 flex-shrink: 0; /* 画面幅が狭くても画像を潰さない */ 50 margin: 0 40px; /* 隙間 */ 51 box-sizing: content-box; 52} 53 54.logo-slider .slider-item img { 55 width: 100%; 56 height: 100%; 57 object-fit: contain; 58}

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

Geminiやvscodeのaiに聞いても原因がわかりませんでした。

補足

数時間も格闘したので解決していただければ本当にありがたいです。よろしくお願いいたします。

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

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

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

guest

回答1

0

以下のようにするとどうでしょうか。

js

1 // $(window).on('load', function () { ←消す 2 setTimeout(function () { 3 // 2. 1枚分の移動距離を正確に測る 4 var itemWidth = item.outerWidth(true); 5 6 // 【確認用】F12のコンソールに数字が出るかチェック 7 console.log('移動距離:', itemWidth); 8 9 // 3. 画像を一枚分動かす関数 10 function startScroll() { 11 list.animate({ "marginLeft": -itemWidth }, 3000, "linear", function () { 12 // 4. アニメーション終了後、先頭の子供を特定 13 var target = list.find('.slider-item:first-child'); 14 15 // 5. ターゲットを最後尾に移動(append) 16 list.append(target); 17 18 // 6. リストの左余白を0に戻す 19 list.css("marginLeft", 0); 20 21 // 7. ループ(自分自身をもう一度呼ぶ) 22 startScroll(); 23 }); 24 } 25 26 // 8. 実行 27 startScroll(); 28 }); 29 // }); ←消す

投稿2026/04/27 00:35

Lhankor_Mhy

総合スコア37754

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.25%

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

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

質問する

関連した質問