wordpressでページ内、ページ外のアンカーリンクをスムーズスクロールしたいと思っています。
トップページにid=hogeがあり、
トップページからでも、他ページからでもスムーズスクロールさせたいです。
##現状
ページ外からは希望通りの動きになるのですが、ページ内ではスムーズスクロールされません。
以下現在のコードです。
リンクコード:http://sample.com/#hoge
$(function() { var topBtn = $(".back-to-top"); topBtn.hide(); $(window).scroll(function() { if ($(this).scrollTop() > 200) { topBtn.fadeIn(); } else { topBtn.fadeOut(); } }); topBtn.click(function() { $("body,html").animate( { scrollTop: 0 }, 500 ); return false; }); }); $(function() { var headerHight = 0; $("a[href^=#]") .not("[data-lity]") .click(function() { var href = $(this).attr("href"); var target = $(href == "#" || href == "" ? "html" : href); var position = target.offset().top - headerHight; $("html, body").animate({ scrollTop: position }, 550, "swing"); return false; }); }); $(function() { var headerHight = 50; url = window.location.toString(); anc = url.substring(url.search("#") + 1); if (anc) { var Hash = $("#" + anc); var HashOffset = $(Hash).offset().top - headerHight; jQuery("html, body").animate({ scrollTop: HashOffset }, 1200, "swing"); } });
またアンカーリンクの記載はwordpressのカスタムメニューのカスタムリンクからしているのですが、
カスタムリンクをidのみ#hogeにするとページ内でスクロールしますが、
ページ外になると、urlが表示中のページに書き換えられるため、該当しません。
ご教授宜しくお願いします。

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/26 09:23
2019/06/26 09:32
2019/06/27 02:48