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

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

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

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

jQuery

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

HTML

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

CSS

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

Q&A

1回答

2598閲覧

modaal.jsで実装したモーダル内にあるスライダーが動かない

x_me_x

総合スコア0

JavaScript

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

jQuery

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

HTML

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

CSS

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

0グッド

0クリップ

投稿2021/02/01 07:09

編集2021/02/01 08:11

前提・実現したいこと

modaal.jsで実装したモーダルウインドウの中に
Swiper.jsを使ってスライダーを作成したいです。
試したソースコードでは上手くいかず、こちらに質問させていただきました。

発生している問題

モーダルの中にあるスライダーが動かない。

該当のソースコード

html

1<!DOCTYPE html> 2<html lang="en"> 3 4<head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 7 <link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.css" /> 8 <link rel="stylesheet" href="https://unpkg.com/swiper/swiper-bundle.min.css" /> 9 <link rel="stylesheet" href="modaal.css"> 10 <link rel="stylesheet" href="style.css"> 11 <title>demo</title> 12</head> 13 14<body> 15 <div class="inline-wrap"> 16 <a href="#inline" class="inline">モーダルを表示するリンク</a> 17 </div> 18 19 <!-- Slider全体のコンテナ --> 20 <div class="swiper-container"> 21 <!-- Sliderの内包コンテナ --> 22 <div class="swiper-wrapper"> 23 <!-- Slideさせたいコンテンツ --> 24 <div class="swiper-slide slide01">Slide 1</div> 25 <div class="swiper-slide slide02">Slide 2</div> 26 <div class="swiper-slide slide03">Slide 3</div> 27 </div> 28 <!-- ページネーション(※省略可) --> 29 <!-- <div class="swiper-pagination"></div> --> 30 <!-- ナビゲーションボタン(※省略可) --> 31 <div class="swiper-button-prev"></div> 32 <div class="swiper-button-next"></div> 33 34 <!-- スクロールバー(※省略可) --> 35 <!-- <div class="swiper-scrollbar"></div> --> 36 </div> 37 38 <div id="inline" style="display: none;"> 39 <!-- Slider全体のコンテナ --> 40 <div class="swiper-container"> 41 <!-- Sliderの内包コンテナ --> 42 <div class="swiper-wrapper"> 43 <!-- Slideさせたいコンテンツ --> 44 <div class="swiper-slide slide01">Slide 1</div> 45 <div class="swiper-slide slide02">Slide 2</div> 46 <div class="swiper-slide slide03">Slide 3</div> 47 </div> 48 <!-- ページネーション(※省略可) --> 49 <!-- <div class="swiper-pagination"></div> --> 50 <!-- ナビゲーションボタン(※省略可) --> 51 <div class="swiper-button-prev"></div> 52 <div class="swiper-button-next"></div> 53 54 <!-- スクロールバー(※省略可) --> 55 <!-- <div class="swiper-scrollbar"></div> --> 56 </div> 57 </div> 58 59 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.1/jquery.min.js" 60 integrity="sha512-bLT0Qm9VnAYZDflyKcBaQ2gg0hSYNQrJ8RilYldYQ1FxQYoCLtUjuuRuZo+fjqhx/qtq/1itJ0C2ejDxltZVFg==" 61 crossorigin="anonymous"></script> 62 <script src="https://unpkg.com/swiper/swiper-bundle.js"></script> 63 <script src="https://unpkg.com/swiper/swiper-bundle.min.js"></script> 64 <script src="modaal.js"></script> 65 <script src="main.js"></script> 66</body> 67 68</html>

css

1.inline-wrap { 2 width: 100%; 3 height: 100vh; 4 display: -webkit-box; 5 display: -ms-flexbox; 6 display: flex; 7 -webkit-box-pack: center; 8 -ms-flex-pack: center; 9 justify-content: center; 10 -webkit-box-align: center; 11 -ms-flex-align: center; 12 align-items: center; 13} 14 15.inline { 16 text-decoration: none; 17 color: #333; 18 width: 30%; 19 padding: 30px; 20 text-align: center; 21 background-color: palevioletred; 22 -webkit-transition: 0.5s all; 23 transition: 0.5s all; 24} 25 26.inline:hover { 27 opacity: 0.7; 28} 29 30.swiper-container { 31 width: 80%; 32 height: 80vh; 33} 34 35.slide01 { 36 background-color: paleturquoise; 37 display: -webkit-box; 38 display: -ms-flexbox; 39 display: flex; 40 -webkit-box-pack: center; 41 -ms-flex-pack: center; 42 justify-content: center; 43 -webkit-box-align: center; 44 -ms-flex-align: center; 45 align-items: center; 46} 47 48.slide02 { 49 background-color: palegreen; 50 display: -webkit-box; 51 display: -ms-flexbox; 52 display: flex; 53 -webkit-box-pack: center; 54 -ms-flex-pack: center; 55 justify-content: center; 56 -webkit-box-align: center; 57 -ms-flex-align: center; 58 align-items: center; 59} 60 61.slide03 { 62 background-color: palegoldenrod; 63 display: -webkit-box; 64 display: -ms-flexbox; 65 display: flex; 66 -webkit-box-pack: center; 67 -ms-flex-pack: center; 68 justify-content: center; 69 -webkit-box-align: center; 70 -ms-flex-align: center; 71 align-items: center; 72}

js

1$(".inline").modaal({ 2 animation_speed: '500', // アニメーションのスピード 3 background: '#fff', // 背景の色を白に変更 4 overlay_opacity: '0.9', // 背景のオーバーレイの透明度を変更 5 6}); 7 8var mySwiper = new Swiper('.swiper-container', { 9 loop: true, 10 pagination: { 11 el: '.swiper-pagination', 12 }, 13 navigation: { 14 nextEl: '.swiper-button-next', 15 prevEl: '.swiper-button-prev', 16 }, 17 scrollbar: { 18 el: '.swiper-scrollbar', 19 }, 20})

試したこと

モーダル外に作ったスライダーは動くのですが、
モーダルの中にスライダーを作ると動かなくなります。
modaal.jsとSwiper.jsの組み合わせが原因で動かなくなるのでしょうか?

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

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

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

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

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

guest

回答1

0

過去質問に類似するものがありましたが、いかがでしょうか。

swiper に限らず、非表示にされることを想定していないライブラリが多いので、組み合わせるのは結構難しいとは思います。

リサイズで処理が問題なく戻るなら、ページを切り替えたタイミングで、update処理をするか triggerでリサイズイベントを起こしてしまうか、どちらかしてみてはいかがでしょう。
JavaScript - bookblock内でのswiper使用(リサイズしないと動作しない原因について)|teratail

投稿2021/02/01 08:34

Lhankor_Mhy

総合スコア36115

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

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

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

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問