BLOG 2018.08.16

colorbox.jsのモーダルウィンドウでiOSの背景を固定することができた!

WEB制作ではよく使うモーダルウィンドウ。
代表的なものだと、LightboxFancyBoxなどが有名ですよね。


Colorboxは、オプションが豊富でカスタマイズしやすいことで人気です。
ただ困ったことに、元となるHTMLがモーダルで立ち上がったウィンドウより長いとスクロールできてしまい、立ち上がったコンテンツが上下に動いてしまいます。

 

様々なサイトでモーダルの背景を固定する方法がありましたが、iOSだけはなかなか固定できなかった。。。涙
その解決方法をお伝えします!

 


jQuery Colorbox.js の基本的な使い方

jQuery Colorbox.jsの基本的な使い方は、検索すればたくさん出てきます。

Colorbox公式サイト:
http://www.jacklmoore.com/colorbox/

 

こちらは基本的な設定について丁寧に書かれていますし、
http://gimmicklog.main.jp/jquery/299/

こちらはオプションについて日本語で詳しく説明がありますし。
http://cly7796.net/wp/javascript/plugin-jquery-colorbox/

こちらもカスタマイズについての説明があります。
https://www.tam-tam.co.jp/tipsnote/javascript/post6708.html


しかししかし、背景が触れてしまう(スクロールに反応してしまう)解決方法についてはなかなか見つからず。


position:fixed;にしたり、
height:100%; にして、overflow:hidden; にしたり、


様々なサイトからヒントを得て試してみましたが、何かしらの不具合が出てうまく行きませんでした。。。

 

そして見つけたこのサイト!
https://github.com/jackmoore/colorbox/issues/757

神がいました!!

 

@KingWebsites 氏がコメントしているこちらの部分。

 

なんか、、、コメントでみんな絶賛してる!!
みんな解決したって言ってる!!!

で、、、ええと、どこに記述するの?!

colorbox.js自体に記述箇所を探しましたが、

 

こちらのコードをHTML、もしくはJavascriptのcolorbox呼び出し部分に記述するだけで、解決!!

 

1週間ほど色々探しましたが、この記述によって、iOS含め、すべてのモダンブラウザで背景の固定が実現しました。
ありがとう、KingWebsiteさん!!

 

【参考サイト】
Colorbox公式サイト:
http://www.jacklmoore.com/colorbox/

CONTACT US !

デザインやWEBサイトのことでお困りごとはありませんか?
株式会社スリーでは、デザインはもちろん戦略からクリエイティブ、コミュニケーションまで、
デジタルとアナログ両分野の手法を使い分け、事業成長と問題解決をトータルサポートします。
お気軽にご相談ください!

お問い合わせはこちら