###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}
回答1件
あなたの回答
tips
プレビュー