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

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

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

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

CSS

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

Q&A

解決済

1回答

7608閲覧

colorboxを内側の画像サイズに合わせて可変させたい

haru-ru

総合スコア7

jQuery

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

CSS

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

0グッド

0クリップ

投稿2020/04/20 16:38

編集2020/04/21 03:47

###colorboxを内側の画像サイズに合わせて可変させたい
jQuery初心者です。
ネット上の情報から見よう見真似でaタグにcolorboxを実装してみたのですが、内側の画像サイズに合わせてcolorboxを可変させる方法がわからなくて途方に暮れています。
※下記記述ではcolorboxに対して画像が左上合わせで配置されています。

元のソースコード

jQuery

1<link rel="stylesheet" href="colorbox/degign02/colorbox.css"> 2<script src="https://code.jquery.com/jquery-1.6.4.min.js"></script> 3<script src="colorbox/jquery.colorbox-min.js"></script> 4<script src="colorbox/jquery.colorbox-ja.js"></script> 5<script> 6 $(document).ready(function(){ 7 $(".icon li a").colorbox({iframe:true, innerWidth:"60%", innerHeight:"80%"}); 8 }); 9</script> 10 11 12<ul class="icon"> 13 <li> 14 <a href="picture/pict01.jpg"><img src="icon/icon_pict01.png" alt="pict01" width="130px"></a> 15 </li> 16 <li> 17 <a href="picture/pict02.jpg"><img src="icon/icon_pict02.png" alt="pict02" width="130px"></a> 18 </li> 19</ul> 20

試したこと

【1】
画像の縦と横の数値を読み込んでcolorboxをリサイズしようとしたのですが、自分の理解力が足りず、そもそもjQueryを読み込んでくれなくなってしまいました。
他にも色々試してみたのですが、どんどん文法的に正しいのかすらわからなくなってきました…。
何かアドバイスいただけましたら幸いです。

該当のソースコード

jQuery

1<link rel="stylesheet" href="colorbox/degign02/colorbox.css"> 2<script src="https://code.jquery.com/jquery-1.6.4.min.js"></script> 3<script src="colorbox/jquery.colorbox-min.js"></script> 4<script src="colorbox/jquery.colorbox-ja.js"></script> 5<script> 6$(document).ready(function(){ 7 $(".icon li a").colorbox({iframe: true, innerWidth: 60%, innerHeight: 80%, 8 onComplete : function() { 9 $('#cboxLoadedContent').children('iframe').on('load',function(){ 10 var $iframe = $(this); 11 12 var W = Math.max.apply(null, $iframe.contents().find('body').find('div,header,footer,main,section').map(function (){ 13 return $(this).outerWidth(); 14 }).get()); 15 16 var H = $iframe.get(0).contentWindow.document.body.clientHeight; 17 18 $iframe.colorbox.resize({ 19 innerWidth: W, 20 innerHeight: H, 21 }); 22 }); 23 } 24 }); 25}); 26}; 27</script>

【2】
苦肉の策でcolorboxをリサイズせずにレイアウトをメインで担うcssファイルから画像を中央配置に指定して誤魔化そうともしましたが、これも変化なし。
正直なところ【1】の解決案が初心者には難しいとは感じていますので、こちらの代替案が解決できればフォトショ等で画像サイズを編集しなおして各種設定を調整した方が賢明なのかな、と思っております。
colorbox内の画像の中央配置の方法も良ければご教授いただきたいです。

該当のソースコード

jQuery

1<link rel="stylesheet" href="colorbox/degign02/colorbox.css"> 2<script src="https://code.jquery.com/jquery-1.6.4.min.js"></script> 3<script src="colorbox/jquery.colorbox-min.js"></script> 4<script src="colorbox/jquery.colorbox-ja.js"></script> 5<div class="colorbox-size"><script> 6 $(document).ready(function(){ 7 $(".icon li a").colorbox({iframe:true, innerWidth:"60%", innerHeight:"80%"}); 8 }); 9</script></div> 10 11 12 13<ul class="icon"> 14 <li> 15 <a href="picture/pict01.jpg"><img src="icon/icon_pict01.png" alt="pict01" width="130px"></a> 16 </li> 17 <li> 18 <a href="picture/pict02.jpg"><img src="icon/icon_pict02.png" alt="pict02" width="130px"></a> 19 </li> 20</ul>

CSS

1.colorbox-size{ 2 margin: 0 auto; 3 max-width: 50%; 4}

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

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

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

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

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

m.ts10806

2020/04/21 02:39

>HTML上にcamvasを設置して >href="camvas/ >href="camvas/ 「camvas」ではありません。 https://developer.mozilla.org/ja/docs/Web/HTML/Element/canvas ディレクトリは任意の名前が指定可能とはいえ、名前が決まっているものは間違えては今後別に事故が起き得ます。調整願います。 (意図的にそのように表記しているのなら説明があったほうが良いです)
haru-ru

2020/04/21 03:55

こちらのスペルミスです。ご指摘感謝申し上げます。 お恥ずかしながら「canvas」という要素が存在することも初めて知りました。 今回は動画を扱ってのファイルではなく、これでは誤解を招きますので、 「href="camvas/」表記のディレクトリ名を「href="colorbox/」に変更いたしました。
guest

回答1

0

ベストアンサー

幅を決めているからでは?

js

1// $(".icon li a").colorbox({iframe:true, innerWidth:"60%", innerHeight:"80%"}); 2// ↓ 3 $(".icon li a").colorbox();

投稿2020/04/21 05:10

kei344

総合スコア69583

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

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

haru-ru

2020/04/21 06:03

幅を指定しないとcolorboxが表示されないものと思っておりました…。 早速上記の方法で記述しなおしてみましたら、きれいにcolorboxを可変することができました。 jQueryの文法がどうにも苦手で途方に暮れておりましたので、たいへん助かりました。 この度はご教示いただきまして、本当ににありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問