ここで他の投稿をチェックしましたが、探している結果はありません。クリックしたい
<a href="#about">About</a>
<div id="about">Content of this..</div>
アドレスバーにwww.domain.com/#aboutを入れずにその要素までスクロールさせます
完璧な例として、私がここで見つけたこのサイトをチェックして、いくつかのリンクをクリックしてください。クリックしてもアドレスバーは変わりません。
ここで他の投稿をチェックしましたが、探している結果はありません。クリックしたい
<a href="#about">About</a>
<div id="about">Content of this..</div>
アドレスバーにwww.domain.com/#aboutを入れずにその要素までスクロールさせます
完璧な例として、私がここで見つけたこのサイトをチェックして、いくつかのリンクをクリックしてください。クリックしてもアドレスバーは変わりません。
以下の例では、javascript と jquery を使用して、必要なことを行うことができます (これは古いバージョンの jquery を使用していることに注意してください)。
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
<script type='text/javascript'>
jQuery(document).ready(function($) {
$(".scroll").click(function(event){
event.preventDefault();
$('html,body').animate({scrollTop:$(this.hash).offset().top}, 1200);
});
});
</script>
</head>
<body>
<a class="scroll" href="#codeword">Blue Words</a>
<div id="codeword"></div>
</body>
</html>
これを自分で試してみましたが、これがこのテーマに関する私の学習の要約です。
基本的なリンク コマンドは次のとおりです。
<A HREF="#codeword">Blue Words</A>
ジャンプがページをスクロールする場所を示す方法は次のとおりです。
<A NAME="codeword">
これが何が起こっているかです
A HREF コマンドは、リンクが URL ではなくコードワードであることを除いて、基本リンクと同じです。
コードワードの前に # 記号があることに注意してください。内部リンクであることを示すために必要です。# 記号がない場合、ブラウザーは、コードワードにちなんで名付けられたページの外部にあるものを探します。
あなたの「コードワード」は、あなたが望むものなら何でもかまいません。私はそれを短く保ち、ジャンプ先を示すように最善を尽くしています。使用できる文字数に制限があるかもしれませんが、まだ見つけていません。
ページがジャンプするポイントは、HREF という単語を NAME という単語に置き換える以外は、同じ一般的な形式に従います。
NAME コマンドに # 記号がないことに注意してください。
ノート!NAME ターゲットを配置した場所が、画面ブラウザの上部に表示されます。
それが役に立てば幸い。
window.location.hash = ""
私が見つけることができる可能な方法です。
hash
の次の文字列を与える#
.
私にとっては、「return false;」を挿入するだけです。この問題を解決しました。
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js" async></script>
<script>
jQuery(document).ready(function($) {
$('a[href^=#]:not(a[href=#])').click(function() {
$('html, body').animate({scrollTop: $(this.hash).offset().top}, 1300, 'easeInOutExpo');
return false;
});
});
</script>
(これは、ページ上のすべてのアンカー リンクに適用されます。)