ページを上部にあるdivまでスクロールします。ページの他の部分のボタンがありますが、一番下までスクロールしてボタンをクリックしても機能しません。ページの一番上に移動しません。これがCodePenです: https://codepen.io/Filizof/pen/xygWyp?editors=101
$(document).ready(function() {
$("#btn1").click(function() {
$("body").scrollTo("#menudiv");
});
});
<script type="text/javascript" src="jquery-3.2.1.js">
と置換する
<script type="text/javascript" src="https://code.jquery.com/jquery-3.3.1.js"></script>
コードを少し更新します。
$(document).ready(function() {
$("#btn1").click(function()
{
var elmnt = document.getElementById("menudiv");
elmnt.scrollIntoView();
});
});
Div /要素にスクロールするには、それはscrollIntoView HTML DOMメソッドであり、JQuery関数ではありません。
これがコードペンです JS Scroll to a Element
Markdownifyプラグインが原因で少し問題がありましたが、とにかくリンクのターゲットを検索する必要があったため、この回避策を使用しました。実際にはさまざまな要素セレクターで機能しており、私の場合、私のリンクは<a href="#target">some text</a>
と私の実際のターゲットは<a href="target"></a>
この特定のケースについて、私はあなたにその解決策を与えることができます:
var scrollAnchorSamePage = function() {
$('a[href^="#"]').click(function() {
event.preventDefault();
var id = $(this).attr("href");
// okay lets remove the hashtag in front:
var target = $('a[href^="' + id.substring(1, id.length) + '"]');
// and I need a little offset due to a fixed sticky header by 140
$('html, body').animate({ scrollTop: target.offset().top - (160) }, 1000);
});
}
scrollAnchorSamePage();
PS:以下のjQueryパッケージのインポートを使用します。閉じる前にそれらを追加できます</body>
DOMのhtmlタグ。
<!-- Latest minified jQuery -->
<script src="https://code.jquery.com/jquery-2.2.4.min.js" integrity="sha256-BbhdlvQf/xTY9gja0Dq3HiwQF8LaCRTXxZKRutelT44=" crossorigin="anonymous"></script>
<!-- Latest compiled and minified bootstrap JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js" integrity="sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS" crossorigin="anonymous"></script>