🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
jQueryプラグイン

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

jQuery

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

Q&A

解決済

1回答

1894閲覧

lightboxを入れたがTypeErrorが出る

pecchan

総合スコア591

jQueryプラグイン

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

jQuery

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

0グッド

0クリップ

投稿2021/02/12 23:26

編集2021/02/13 02:47

jQuery 3.5.1
lightbox2 v2.11.3

jQuery初心者です。

lightbox2の最新版を公式サイト(github)からDLして利用しました。
https://github.com/lokesh/lightbox2/releases/tag/v2.11.3
jsとcssとimageをローカルに置きました。

画像のポップアップはしましたが、閉じるアイコンが出ておらずポップアップを閉じれません。

よく見ると、ポップアップが開く一瞬、consoleにエラーを吐いてました。
イメージ説明
エラー行のlightbox.js:262行(プラグイン)は以下のようになっています。
js/lightbox.js

javacsript

1 // Position Lightbox 2 var top = $window.scrollTop() + this.options.positionFromTop; 3 var left = $window.scrollLeft(); 4 this.$lightbox.css({ 5 top: top + 'px', 6 left: left + 'px' 7 }).fadeIn(this.options.fadeDuration); //この部分 8

該当のソース

html

1<!DOCTYPE html> 2<html> 3<head> 4<meta charset="utf-8"> 5 6<link media="all" rel="stylesheet" href="/css/style.css"> 7<link media="all" rel="stylesheet" href="/css/lightbox.min.css"> 8<script src="https://code.jquery.com/jquery-3.5.1.js"></script> <!-- jquery --> 9<meta name="viewport" content="width=device-width, initial-scale=1.0"> 10<title>Preview Layout</title> 11</head> 12<body> 13 14 15<a href="/images/cate-farm.jpg" data-lightbox="demo"><img class="item-show__img-bg" src="/images/cate-farm.jpg" alt=""></a> 16 17<script type="text/javascript" src="/js/lightbox.min.js"></script> 18 19</body> 20</html>

jQueryのバージョンとligtboxのバージョンが合っていないのかな?と思いましたが、lightboxが利用してるjQueryバージョンがgitに記載がないためよく分かりません。

原因分かる方いたら教えていただけないでしょうか?
宜しくお願いします。

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

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

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

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

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

m.ts10806

2021/02/12 23:29

コードはこれで全てですか? HTMLも必要に思いますし、 そもそも$lightboxという変数はどこに定義されてますか?
m.ts10806

2021/02/12 23:30

あと念のため、githubのURLもリンクとして提示してください
pecchan

2021/02/12 23:31

ちょうど追記してるところでした。 あと >そもそも$lightboxという変数はどこに定義されてますか? は、プラグイン側のコードです
pecchan

2021/02/12 23:41

jQuery本体は、<head>で読み込んでます。
m.ts10806

2021/02/13 00:13

>href="{{ path '/css/lightbox.min.css' }}" 今のタグではありえないコードが紛れている。 フレームワーク関係ないなら、ブラウザに出力されたHTMLを提示してください。
m.ts10806

2021/02/13 00:21 編集

コードが点過ぎてコピペで再現できないのです。 こちらで補完する場所が多いと問題再現できないのでアドバイスに繋がりません。 「jQuery本体は、<head>で読み込んでます。 」「は、プラグイン側のコードです 」という説明では真意がわかりません。 本当に正しいものかわからないし、「js/lightbox.js 」の読み込み記述もないし。 文章説明より、コードを。 あとフレームワーク使ってるようですが > {{ path '/css/lightbox.min.css' }} 現在つけられたタグだけだと再現出る環境作れる人いません。 関係ないならブラウザに表示されたHTMLを提示してください。
hoshi-takanori

2021/02/13 00:22

質問の仕方が良くなかったですね。もしかして、jquery.slim を読み込んでませんか?
pecchan

2021/02/13 00:43

度々すみません。有難う御座います。 jquery.slimだったのでslimじゃない方に指定してみましたが、同じエラーでした。
pecchan

2021/02/13 00:46

>フレームワーク関係ないなら、ブラウザに出力されたHTMLを提示してください。 はい、いったん修正します。
pecchan

2021/02/13 02:47

失礼しました。 全ソースを掲載し直しました。
m.ts10806

2021/02/13 03:38

コードとエラーが合わないですね。 js/lightbox.js とご自身は書いてますが、 リンクさせているのは /js/lightbox.min.js だけ。 でもエラーはjs/lightbox.js あと、slimじゃないほうに替えられたのならエラーも差し替えるか slimのほうとそうじゃないほうで提示しなおしてください。 整合性がとれてないと、そこから突っ込まなければなりません。
pecchan

2021/02/13 08:42

>コードとエラーが合わないですね。 min.jsだと改行なくて見辛いと思い、js/lightbox.js を記載しました。 それからslimじゃない方に変えてもエラーは同じだったと記載してます。
guest

回答1

0

自己解決

lightbox2以外のライトボックス系のプラグインを試しましたが、いずれも正常に動作しました。
※lightcase, fancybox

lightbox2でないといけない理由はありませんので他のものを利用致します。
お騒がせしました。

投稿2021/02/14 05:16

pecchan

総合スコア591

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問