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

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

新規登録して質問してみよう
ただいま回答率
85.48%
Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

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

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

Q&A

0回答

807閲覧

Nuxt.js+Bootstrap4でNavBarのバーガーメニューが閉じない

mio503

総合スコア6

Nuxt.js

Nuxt.jsは、ユニバーサルなSPAが開発可能なVue.jsベースのフレームワーク。UIの描画サポートに特化しており、SSRにおけるサーバーサイドとクライアントサイドのUIレンダリングなどさまざまな機能を持ちます。

jQueryプラグイン

jQueryの拡張機能。 様々な種類があり、その数は膨大です。公開済みのプラグインの他にも、自作することもできます。 jQueryで利用できるようにしておくだけで、導入およびカスタマイズが比較的容易に行なえます。

JavaScript

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

Bootstrap

BootstrapはウェブサイトデザインやUIのWebアプリケーションを素早く 作成する可能なCSSフレームワークです。 Twitter風のデザインを作成することができます。

0グッド

0クリップ

投稿2020/02/23 03:59

編集2020/02/23 06:55

ホームページを作成していますが、
初心者でNuxt.jsを使い、CDNでbootstrapを使いavBarを作成していますが、
バーガーメニューが閉じない状況が発生しており、つまづいています。
最終的にバーガーメニューが開閉するところまで実現したいです。
お手数ですが、どなたがご教授頂けますと助かります。

発生している問題

以下のソースコードの下部に必要なCDNを読み込んでいますが、バーガーメニューは開きますが、閉じない状況です。

該当のソースコード pages/test.vue

<template> <div> <nav class="navbar navbar-expand-lg navbar-light bg-light"> <a class="navbar-brand" href="#">Navbar</a> <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarTogglerDemo02" aria-controls="navbarTogglerDemo02" aria-expanded="false" aria-label="Toggle navigation"> <span class="navbar-toggler-icon"></span> </button> <div class="collapse navbar-collapse" id="navbarTogglerDemo02"> <ul class="navbar-nav mr-auto mt-2 mt-lg-0"> <li class="nav-item active"> <a class="nav-link" href="#">Home <span class="sr-only">(current)</span></a> </li> <li class="nav-item"> <a class="nav-link" href="#">Link</a> </li> <li class="nav-item"> <a class="nav-link disabled" href="#" tabindex="-1" aria-disabled="true">Disabled</a> </li> </ul> <form class="form-inline my-2 my-lg-0"> <input class="form-control mr-sm-2" type="search" placeholder="Search"> <button class="btn btn-outline-success my-2 my-sm-0" type="submit">Search</button> </form> </div> </nav> </div> </template> <script> export default { head: { script: [ { src: 'https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js' }, { src: 'https://cdnjs.cloudflare.com/ajax/libs/jquery/3.4.1/jquery.slim.js' }, { src: 'https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/esm/popper.min.js' }, { src: 'https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js' }, ], link: [ { rel: 'stylesheet', href: 'https://use.fontawesome.com/releases/v5.6.1/css/all.css' } ] } } </script>

該当のソースコード nuxt.config.js

module.exports = {
mode: 'universal',
/*
** Headers of the page
*/
head: {
title: process.env.npm_package_name || '',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
{ hid: 'description', name: 'description', content: process.env.npm_package_description || '' }
],
link: [
{ rel: "icon", type: "image/x-icon", href: "/favicon.ico" },
{
rel: "stylesheet",
href:
"https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css"
}
],

script: [ { src: "https://code.jquery.com/jquery-3.3.1.slim.min.js", type: "text/javascript" }, { src: "https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js", type: "text/javascript" }, { src: "https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js", type: "text/javascript" } ], style: [ { cssText: '.foo { color: red }', type: 'text/css' } ]

},
/*
** Customize the progress-bar color
/
loading: { color: '#fff' },
/

** Global CSS
/
css: [
/
'@/assets/css/resset.css', /
],
/

** Plugins to load before mounting the App
/
plugins: [
],
/

** Nuxt.js dev-modules
/
buildModules: [
],
/

** Nuxt.js modules
/
modules: [
// Doc: https://bootstrap-vue.js.org
'bootstrap-vue/nuxt',
],
/

** Build configuration
/
build: {
/

** You can extend webpack config here
*/
extend (config, ctx) {
}
}
}

試したこと

色々とネットで調べましたが、Javascript要素に以下のscriptを設置するとバーガーメニューが上手く開閉する(URL https://knowledge.cpi.ad.jp/tech/navbar-close/)とありましたが、どのようにNuxt.jsの仕様に併せて記述する方法かわかりません。
以下のscriptを組み込んで、実際希望とする動きとなるかわかりません。

<script> $('.navbar-nav>li>a , .dropdown-menu>a').on('click', function(){ if(this.id != 'navbarDropdown'){ $('.navbar-collapse').collapse('hide'); } }); </script>

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

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

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

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

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

mio503

2020/02/23 05:29

hoshi-takanori 様 ご教授頂きありがとうございます。 該当ページの【最初の方法(簡単)CDNを使用する】を参照に修正してみましたが、 変わらずバーガーメニューが閉じない状況でした。 nuxt.config.js追記しました。 お手数ですが、少しでも分かることがあればご助言頂けると幸いです。
mio503

2020/02/23 06:52

色々試したところCDNを2回読んでいる事が原因でバーガメニューが閉じない事がわかりました。 nuxt.config.jsのCDN記載はそのままにpagesの方のCDN記述を削除したところ求めている通りに動きました。ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問