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

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

新規登録して質問してみよう
ただいま回答率
87.20%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

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

CSS

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

解決済

script内のエラーについて

ten_soldiers
ten_soldiers

総合スコア1

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

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

CSS

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

2回答

0評価

0クリップ

163閲覧

投稿2021/12/20 13:46

実現したいこと

現在htmlとcssの学習をしているのですが、
jsで固定ナビゲーションをしたいと考えております。

発生している問題

htmlコード内の下記のjsの1行目でエラーになってしまいます。 var navPosition = jQuery( '#nav_menu' ).offset().top; エラー内容 Uncaught ReferenceError: jQuery is not defined

該当のソースコード

html

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="utf-8"> <title>title</title> <link rel="stylesheet" href="css/reset.css"> <meta name="description" content="テキストテキスト"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="container"> <header id="header"> <div class="header_inner"> <h1 class="header_logo">タイトル</h1> </div> <div id="nav_menu"> <nav class="nav_ber"> <ul class="nav_list"> <li class="nav_item"><a href="">ナビ</a></li> <li class="nav_item"><a href="">ナビ</a></li> <li class="nav_item"><a href="">ナビ</a></li> <li class="nav_item"><a href="">ナビ</a></li> <li class="nav_item"><a href="">ナビ</a></li> </ul> </nav> </div> </header> <main> <div class="mainvisual"> <img src="./img/mainvisual.jpg" alt="画像配置"> </div> <section class="section"> <h2 class="section_title">タイトル1</h2> </section> <section class="section"> <h2 class="section_title">タイトル2</h2> </section> <section class="section"> <h2 class="section_title">タイトル3</h2> </section> <section class="section"> <h2 class="section_title">タイトル4</h2> </section> <section class="section"> <h2 class="section_title">タイトル5</h2> </section> </main> </div> <script> var navPosition = jQuery( '#nav_menu' ).offset().top; //←ここです var navHeight = jQuery( '#nav_menu' ).outerHeight(); jQuery( window ).on('scroll',function(){ if( jQuery(this).scrollTop() > navPosition){ jQuery('body').css( 'padding-top' , navHeight ); jQuery( '#nav_menu' ).addClass( 'nav_fixed' ); }else{ jQuery( 'body' ).css( 'padding-top', 0 ); jQuery( '#nav_menu' ).removeClass( 'nav_fixed' ); } }); </script> </body> </html>

css

@charset "UTF-8"; /*ページ全体*/ body{ background-color: #ffffff; color: #121212; } .container{ max-width: 1940px; margin: 0 auto; } /*ヘッダー部分*/ #header{ height: 212px; } #header .header_inner{ max-width: 750px; height: 100px; background-color: lightslategray; background-color: #fac8c8; color: #ffffff; color: #121212; position: relative; margin: 0 auto; } /*ロゴテキスト*/ #header .header_logo{ font-size: 32px; font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; position: absolute; top: 50%; left: 50%; transform:translate(-50%,-50%); } /*ナビゲーションエリア*/ #header #nav_menu{ background-color: #e4a8a8; color: #121212; font-size: 10pt; font-family: Arial, Helvetica, sans-serif; width: 100%; } #nav_menu .nav_fixed{ left: 0; position: fixed; top: 0; } .nav_ber .nav_list{ height: 84px; text-align: center; justify-content: center; } .nav_ber .nav_list .nav_item{ display: inline-block; padding: 35px 0; } .nav_ber .nav_list .nav_item::before{ color: rgb(163, 163, 163); content: "/"; margin-left: 15px; margin-right: 15px; } .nav_ber .nav_list .nav_item:first-child::before { content: none; } .mainvisual{ margin-bottom: 60px; } .mainvisual img{ width: 100%; } .section{ height: 600px; border-bottom: 1px solid red; margin-bottom: 60px; } .section_title{ font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif; font-size: 34px; color: silver; text-align: center; }

試したこと

scriptの配置箇所headから変えてみたり空欄が半角全角の間違いやエラーについてネットで調べてみましたが原因がわかりませんでした。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

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

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

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

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

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

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

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

ただいまの回答率
87.20%

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

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

質問する

関連した質問

同じタグがついた質問を見る

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

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

CSS

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