jqueryのスムーズスクロールについて質問させていただきたいです。
ヘッダーのリンクからjqueryのスムーズスクロールを利用してリンクをさせたいのですが、リンクをクリックしてもリンクしない状況です。
原因がわからずこちらに投稿させていただきました。jquery本体や、jqueryを記載したjsファイルは読みこまれております。
下記にhtmlのコード、コードに該当する部分のcss、jqueryの内容を記載いたします。
よろしくお願いいたします。
●htmlヘッダー部分のコード
下記<ul class="nav-menu">内のリンクから#works1と#works2のidがついたページ下部のコンテンツにスムーズスクロールさせたいです。
<header id="header"> <section class="header-menu"> <div class="inner"> <div class="inner-left"> <img src="assets/img/img_logo.png" alt="XXXXX"> </div> <div class="inner-right"> <nav> <ul class="nav-menu"> <li><a href="#works1" class="anchor"><span>works1</span><br><span>実績1</span></a></li> <li><a href="#works2" class="anchor"><span>works2</span><br><span>実績2</span></a></li> </ul> </nav> </div> </div> </section> </header>
●上記id="header"部分のcssのコード
#header { background: url(../img/img_mv.jpg) no-repeat left top; height: 900px; background-size: 70% 100%; }
●jqueryの内容
$(function () { $('a.anchor').on('click', function () { var speed = 400; // var href = $(this).attr("href"); var destination = $(href == "#" || href == "" ? 'html' : href); var headerH = $('#header').height(); var position = destination.offset().top; position = position - headerH; $("html,body").animate({ scrollTop: position }, speed, 'swing'); return false; }); });
回答2件
あなたの回答
tips
プレビュー