質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.47%
HTTPヘッダー

Hypertext Transfer Protocol(HTTP)の中のHTTPヘッダフィールドはHTTPの要求やレスポンスの機能しているパラメーターが含まれます。その要求もしくはレスポンスライン(メッセージの最初の一行)でメッセージヘッダを作ります。

スクロール

スクロールとは、ディスプレイスクリーン上において連続的にコンテンツが滑っていくことを指します。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

0回答

939閲覧

「固定ヘッダーを考慮した」目次を押して、他の内部リンクに飛ぶスクロールをできればCSS若しくはjQueryで実現したいです。/ 固定ヘッダーを携帯でも完全に固定させたいです。

Takukyoku

総合スコア0

HTTPヘッダー

Hypertext Transfer Protocol(HTTP)の中のHTTPヘッダフィールドはHTTPの要求やレスポンスの機能しているパラメーターが含まれます。その要求もしくはレスポンスライン(メッセージの最初の一行)でメッセージヘッダを作ります。

スクロール

スクロールとは、ディスプレイスクリーン上において連続的にコンテンツが滑っていくことを指します。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2021/10/07 06:02

前提・実現したいこと

「固定ヘッダーを考慮した」目次を押して、他の内部リンクに飛ぶスクロールをできればCSS若しくはjQueryで実現したいです。/ 固定ヘッダーを携帯でも完全に固定させたいです。

ここに質問の内容を詳しく書いてください。
今自分は、HTMLを用いて、divタグを使って記事の目次を作りましたが、固定ヘッダーが最上部にあるせいかどうもHTMLの見出しタグと文字が被るところにスクロールしてしまいます。

該当のソースコード

Googleで調べて、記事を参考にして、jQueryを入れたところ、スクロールに制限がかかり、一定時間画面を下に遷移させようとしても動かない謎の現象が起きたので理想の挙動を実現できませんでした。
const header = jQuery('#header');

jQuery('a[href^="#"]').on('click', function() {
const gap = header.outerHeight();
const speed = 500;
const href = jQuery(this).attr("href");
const target = jQuery(href == "#" || href == "" ? "html" : href);
const position = target.offset().top - gap;

jQuery("html, body").animate({ scrollTop: position }, speed, "swing");
return false;
});
const header = $('#header');

$('a[href^="#"]').on('click', function() {
const gap = header.outerHeight();
const speed = 500;
const href = $(this).attr("href");
const target = $(href == "#" || href == "" ? "html" : href);
const position = target.offset().top - gap;

$("html, body").animate({ scrollTop: position }, speed, "swing");
return false;
});

上記はサイトから引っ張て来たjQueryのコードになります。 ### 試したこと また、今度はCSSを使い、内部リンクを入れたID箇所にpadding-topとmargin-topを入れた所、固定ヘッダーが画面上部に行ってから機能するようになりました。 因みにこれもサイトを参考にしたものになりますが、親要素に「padding-top:固定ヘッダーの高さpx」をいれる由もかかれておりましたが、それを実行したところ、ヘッダーが縦に長くなっただけで目次への遷移は相変わらず見出しタグと被っており、機能しませんでした。 .restaurant-info{ padding-top:100px; margin-top:-100px; } .food-info{ padding-top:100px; margin-top:-100px; } .menu{ padding-top:100px; margin-top:-100px; } .review{ padding-top:100px; margin-top:-100px; } *上記のコードに関して、classではなく、IDなので.ではなく実際には#になります。 **「どなたかもしヘッダーが固定される前に挙動がおかしくなる原因をしっている方がいましたら早急にご教示頂けると非常に助かります。何卒宜しくお願いいたします。」** *記事のヘッダーはこちらからご覧になれます。 スクロールを途中まですると目次遷移が通常通りの挙動になりますが、固定ヘッダーになる前はなぜか、見出しタグにいかない事がわかるかと思います。 [見本のレストラン紹介記事になります *実際に当レストランは存在致しません] [補足: サイト自体はノーコードのWordpressの有料テーマGENSENを使用しており、CSSとHTML,少しだけjQueryで追加でカスタマイズを入れている形になります] (https://linked-by-vecipe.com/blog/archives/introduce/partial-vegan_ito-restaurant) あともう一点ですが、何故か携帯で記事を下にスクロールすると、問題ないですが、 上にスクロールすると、 目次が上の部分のヘッダーにかぶり、微動します。 cssでposition:fixed!importantを入れているにもかかわらずこうなる原因をご存知の方はこちらの方も一緒にご教示頂けると有難く存じ上げます。 長文失礼致しました。 以上が「固定ヘッダーに関する目次遷移」と「携帯で固定ヘッダーが上にスクロール時に固定されない問題」に関するご相談になります。ご回答の程、何卒宜しくお願い致します。

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Lhankor_Mhy

2021/10/08 01:01

HTMLとCSSをご提示ください。 ところで、ご提示のJavaScriptコードは文法エラーが出ると思います。同じコードを2回書いていませんか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

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

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

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

ただいまの回答率
85.47%

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

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

質問する

関連した質問