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

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回答

1913閲覧

jQuery Gamma gallery 実装方法を教えてください。

neko_cat

総合スコア14

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クリップ

投稿2018/08/30 11:24

お世話になります。

制作中のWEBサイトにフォトギャラリーを作ろうと思い、「Gamma gallery」という jQuery のスクリプトを実装しようとしているのですが、つまずいています。

これまでは、参考サイトを手がかりに、以下の手順で実装を試みました。

  1. 公式サイトからスクリプトをダウンロード
  2. ダウンロードしたフォルダ内の「js」フォルダの中身を、自分の作業フォルダに移動。
  3. ダウンロードしたフォルダ内の「images」フォルダを、自分の作業フォルダに移動。
  4. 作業フォルダ内の「index.html」に、以下のソースを記入。
<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>イメージギャラリー</title>  <script src="common/js/jquery.js"></script> <!-- 以下のソースでダウンロードしたjsファイルを読み込んでいます。 --> <script src="common/js/gamma-gallery/jquery.masonry.min.js"></script> <script src="common/js/gamma-gallery/jquery.history.js"></script> <script src="common/js/gamma-gallery/js-url.min.js"></script> <script src="common/js/gamma-gallery/jquerypp.custom.js"></script> <script src="common/js/gamma-gallery/gamma.js"></script> </head> <body> <!-- 参考サイトのコピペですが、画像のパスは通しています。 --> <div class="gamma-container gamma-loading" id="gamma-container"> <ul class="gamma-gallery"> <li> <div data-alt="img01" data-description="<h3>Assemblage</h3>" data-max-width="1800" data-max-height="2400"> <div data-src="common/js/images/xxxlarge/3.jpg" data-min-width="1300"></div> <div data-src="common/js/images/xxlarge/3.jpg" data-min-width="1000"></div> <div data-src="common/js/images/xlarge/3.jpg" data-min-width="700"></div> <div data-src="common/js/images/large/3.jpg" data-min-width="300"></div> <div data-src="common/js/images/medium/3.jpg" data-min-width="200"></div> <div data-src="common/js/images/small/3.jpg" data-min-width="140"></div> <div data-src="common/js/images/xsmall/3.jpg"></div> <noscript> <img src="common/js/images/xsmall/3.jpg" alt="img01"/> </noscript> </div> </li> </ul> <div class="gamma-overlay"></div> </div> <script> $(function() { var GammaSettings = { viewport : [ { width : 1200, columns : 5 }, { width : 900, columns : 4 }, { width : 500, columns : 3 }, { width : 320, columns : 2 }, { width : 0, columns : 2 } ] }; Gamma.init( GammaSettings ); }); </script> </body> </html>

jsファイルは読み込んでいるし、画像のパスも通っていると思うのですが、ブラウザ上には何も表示されません。
何か手順が抜けているのだと思いますが、それが全く分からない状態です。

ヒントになりそうなことだけでも結構です。
どなたか知恵を貸していただけると、大変助かります。
よろしくお願いいたします。

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

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

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

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

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

guest

回答1

0

ベストアンサー

ブラウザの開発ツールのコンソールでエラーが出ているはずですね!
(↑ が、何のことだか分からない場合は、調べてくださいね。javascriptのコードを書くなら、これの使い方も覚えた方が良いです)

公式サイトからダウンロードしたzipファイルの中に、サンプルのindex.htmlが入っていたと思いますが、それと提示されたコードを比較した限り、表示されない原因は、読み込むjsファイルが足りていないことのようです。

サンプルのindex.htmlを見ると、大事そうなgammaなんちゃらのjsファイルの記述は</body>の直前にまとめて書かれているのですが、1つのファイルだけ<head>タグ内に書かれていて(不親切ですね^^;)、このjsファイルが読まれていないため、エラーが発生しているようです。

modernizr.custom.70736.js

このファイルの読込が必要なのだと思います。(jsフォルダに中にあるはず・・)

投稿2018/08/31 03:27

mix-peach

総合スコア1910

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

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

neko_cat

2018/08/31 06:27

mix-peachさま 丁寧なご回答ありがとうございます。 指摘して下さった js ファイルを、自分の index.html でも読み込んでみました。 加えて、サンプルと同様に css ファイルも読み込んでみたところ、ようやく画像を表示させることができました。 ただ、さらなる課題が出てきてしまいました、、、 サンプルでは、ブラウザ幅に応じて表示する画像が変更される仕様になっているのですが、それがうまく実装できません。 ブラウザのロード・リロード時は、ちゃんとブラウザ幅に合った画像が表示されるのですが、ブラウザ幅をリサイズしてもロード・リロード時と同じ画像が表示され続けてしまいます。 ちなみに開発ツールのコンソールでは、ブラウザをリサイズすると以下のエラーが表示されました。 uncaught TypeError: Cannot read property 'apply' of undefined at jquery.masonry.min.js:10 (jquery.masonry.min.js に原因があるということなのでしょうか。ただ、サンプルと全く同じファイルを使用しているので、それは考えにくいのではと思っています) 重ねての質問になってしまい恐縮ですが、ヒントになりそうなことなどがありましたら、お教えいただけると幸いです。
mix-peach

2018/09/03 01:33 編集

ブラウザ幅云々は、↓の記述が必要なのかと思います。ブラウザ幅をレスポンシブにする記述です。 <meta name="viewport" content="width=device-width, initial-scale=1.0"> エラーについては、こちらの手元では確認ができないのですが、可能性としては大元のjqueryのバージョン違いによって発生しているのかもしれません。 サンプルだと、1.8.2が使われていると思うのですが、neko_catさんが手元に用意して読み込んでいるjqueryファイルのバージョンも1.8.2でしょうか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問