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

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

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

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

0回答

1649閲覧

モーダルウィンドウでスマホの際に背景のスクロールを固定したいです。

tom1645

総合スコア10

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2018/11/03 07:24

編集2018/11/05 04:35

モーダルウィンドウを設置したのですが、
iphoneで確認した際に背景も一緒にスクロールされてしまい、モーダルウィンドウ箇所がスクロールできません。

背景固定してモーダルウィンドウ内をスクロールしたいのですが、ご教授いただけませんでしょうか?

モーダル用のプラグインは、fullPage.jsになります。

html

1<div id="section05" class="section fp-auto-height-responsive"> 2 <div class="sectionInner"> 3 <p class="imageText01"><img src="img/home/txt_about.png" alt=""></p> 4 </div> 5 <div class="block"> 6 <div class="inner inner05"> 7 <h2 class="headline1"><em>ABOUT 〇〇〇</em><span>〇〇〇について</span></h2> 8 <div class="section05Textarea"> 9 <p>テキスト</p> 10 <p>テキスト</p> 11 <p>テキスト</p> 12 13 </div> 14 <p class="button"><a href="××××" target="_blank"><span>テキスト</span></a></p> 15 </div> 16 </div> 17 </div>

css

1#main #section05 .section05Textarea { 2 font-size: 16px; 3 line-height: 2.35; 4 text-align: left; 5 max-width: 750px; 6 margin: auto; } 7 #main #section05 .section05Textarea p { 8 margin-bottom: 1em; } 9 #main #section05 .section05Textarea .text-small { 10 margin-top: 40px; 11 font-size: 11px; 12 line-height: 1.5; } 13 14#main #section05 .inner05 { 15 padding-bottom: 20px; } 16 #main #section05 .section05Textarea p { 17 line-height: 25px; 18 font-size: 12px; } 19 #main #section05 .section05Textarea p.text-small { 20 margin-top: 20px; 21 font-size: 10px; } 22/* ------------------------------------------------------------------ 23 section05 24 -------------------------------------------------------------------*/ 25 #main .section p.iconArrow:before { 26 width: 36px; 27 height: 36px; } 28 @-webkit-keyframes sdb03 { 29 0% { 30 opacity: 0; } 31 30% { 32 opacity: 1; } 33 60% { 34 -webkit-box-shadow: 0 0 0 20px rgba(255, 255, 255, 0.1); 35 box-shadow: 0 0 0 20px rgba(255, 255, 255, 0.1); 36 opacity: 0; } 37 100% { 38 opacity: 0; } } 39 @keyframes sdb03 { 40 0% { 41 opacity: 0; } 42 30% { 43 opacity: 1; } 44 60% { 45 -webkit-box-shadow: 0 0 0 20px rgba(255, 255, 255, 0.1); 46 box-shadow: 0 0 0 20px rgba(255, 255, 255, 0.1); 47 opacity: 0; } 48 100% { 49 opacity: 0; } } 50 .modalCloseBtn { 51 display: inline-block; 52 width: 100%; 53 max-width: 202px; 54 padding: 15px 10px; 55 text-decoration: none; 56 font-size: 123.1%; 57 background: #FFF; 58 border: 1px solid #333; 59 color: #333; 60 -webkit-transition: 0.5s; 61 -o-transition: 0.5s; 62 transition: 0.5s; 63 position: relative; 64 font-size: 12px; 65 background-color: transparent; } } 66

js

1// fullpage 2 3 4 5 var $main = $('#main'); 6 if($main.find('.section').length > 1) { 7 $main.fullpage({ 8 scrollOverflow: true, 9 //scrollOverflow: false, 10 autoScrolling: false, 11 scrollOverflowOptions: { 12 click:false, 13 preventDefaultException: {tagName: /.*/} 14 }, 15 afterRender: function() { 16 if (window.innerWidth > 736) { 17 $('.section .block').css('min-height', (window.innerHeight - 250) + 'px'); 18 } 19 else { 20 $('.section .block').css('min-height', (window.innerHeight - 120) + 'px'); 21 } 22 $('.section .sectionInner').css({ 23 height: (window.innerHeight - $('header').outerHeight()) + 'px', 24 top: $('header').outerHeight() + 'px' 25 }); 26 $('#section01 .sectionInner').css({ 27 height: window.innerHeight + 'px', 28 top: '0' 29 }); 30 $('#section06 .sectionInner').css({ 31 height: (window.innerHeight - $('header').outerHeight()) + 'px', 32 33 top: '500' 34 }); 35 }, 36 afterLoad: function(anchorLink, index) { 37 var $curSection = $('#section0' + index); 38 if ($curSection.find('.block .inner').css('opacity') == 0) { 39 $curSection.find('.sectionInner').animate({ opacity: 1 }, 1000, function() { 40 setTimeout(function() { 41 $curSection.find('.block').css('top', '0').delay(1000).queue(function() { 42 $(this).children('.inner').animate({opacity: 1}, 700, function() { 43 // re-active scroll 44 $main.fullpage.setAllowScrolling(true); 45 $main.fullpage.setKeyboardScrolling(true); 46 }); 47 }); 48 $curSection.find('.sectionInner').animate({opacity: 0}, 1000); 49 }, 1000); 50 }); 51 } 52 else { 53 if ($curSection.find('.block .inner').length == 0) { 54 $curSection.find('.sectionInner').animate({ opacity: 1 }, 1000); 55 } 56 // re-active scroll 57 $main.fullpage.setAllowScrolling(true); 58 $main.fullpage.setKeyboardScrolling(true); 59 } 60 }, 61 onLeave: function(index, nextIndex, direction) { 62 // prepare next animation 63 if($('#section0' + nextIndex + ' .block .inner').css('opacity') == 0) { 64 $('#section0' + nextIndex + ' .block').css({ 65 position: 'relative', 66 top: window.innerHeight + 'px' 67 }); 68 69 } 70 // header fixed 71 if(nextIndex != 1) { 72 $('header').addClass('bgWhite'); 73 } 74 else { 75 $('header').removeClass('bgWhite'); 76 $('.naviSP').outerHeight(window.innerHeight); 77 $('.naviSP .naviInner').outerHeight(window.innerHeight); 78 } 79 // navi active 80 $('#navi').children().removeClass('active'); 81 $('#navi').children('li[data-section="' + nextIndex + '"]').addClass('active'); 82 // stop scroll 83 $main.fullpage.setAllowScrolling(false); 84 $main.fullpage.setKeyboardScrolling(false); 85 } 86 }); 87 $('.iconArrow').on('click touch', function(event) { 88 $main.fullpage.moveSectionDown(); 89 }); 90 $('#navi li a, .naviSP li a').on('click touch', function(event) { 91 $main.fullpage.moveTo($(this).parent().data('section')); 92 $('#overlay').trigger('click'); 93 }); 94 } 95 }); 96})(jQuery); 97 98 99//section02 100$(function(){ 101 var slider = $('.modalContent_list').slick(); 102 $('.js-modal').click(function(){ 103 slider.css('opacity',0); 104 slider.animate({'z-index':1},300,function(){ 105 slider.slick('setPosition'); 106 slider.animate({'opacity':1}); 107 }); 108 }); 109}); 110 111 112$(function(){ 113 $(".js-modalConcept").hide(); 114 $(".js-modal").click(function(){ 115 $( this ).blur() ; 116 if( $( ".modal-overlay" )[0] ) return false ; 117 $( ".js-modalConcept" ).after( '<div class="modal-overlay"></div>' ) ; 118 $( ".modal-overlay" ).fadeIn( "slow" ) ; 119 $( ".js-modalConcept" ).fadeIn( "slow" ) ; 120 $( ".modalCloseBtn" ).unbind().click( function(){ 121 $( ".modalContent,.modal-overlay" ).fadeOut( "slow" , function(){ 122 $('.modal-overlay').remove() ; 123 } ) ; 124 }); 125 }); 126}); 127 128 129//menu 130$(function(){ 131 $(".js-modalMenu").hide(); 132 $(".js-modalMenuBtn").click(function(){ 133 $( this ).blur() ; 134 if( $( ".modal-overlay" )[0] ) return false ; 135 $( ".js-modalMenu" ).after( '<div class="modal-overlay"></div>' ) ; 136 $( ".modal-overlay" ).fadeIn( "slow" ) ; 137 $( ".js-modalMenu" ).fadeIn( "slow" ) ; 138 $( ".modalCloseBtn,.modal-overlay" ).unbind().click( function(){ 139 $( ".modalContent,.modal-overlay" ).fadeOut( "slow" , function(){ 140 $('.modal-overlay').remove() ; 141 } ) ; 142 }); 143 }); 144}); 145 146//list 147 148 149$(function(){ 150 var slider = $('.modalContent_listMenu').slick(); 151 $('.js-modalMenuBtn').click(function(){ 152 slider.css('opacity',0); 153 slider.animate({'z-index':1},300,function(){ 154 slider.slick('setPosition'); 155 slider.animate({'opacity':1}); 156 }); 157 }); 158}); 159 160//section03 161 162 163$(function(){ 164$(".section03Modal").hide(); 165$(".js-modal03").click(function(){ 166 $( this ).blur() ; 167 if( $( ".modal-overlay" )[0] ) return false ; 168 $( ".section03Modal" ).after( '<div class="modal-overlay"></div>' ) ; 169 $( ".modal-overlay" ).fadeIn( "slow" ) ; 170 $( ".section03Modal" ).fadeIn( "slow" ) ; 171 $( ".modal-overlay,.modalCloseBtn" ).unbind().click( function(){ 172 $( ".section03Modal,.modal-overlay" ).fadeOut( "slow" , function(){ 173 $('.modal-overlay').remove() ; 174 } ) ; 175 }); 176}); 177}); 178 179 180 181 182$(function(){ 183 var slider = $('.section03ModalList').slick(); 184 $('.js-modal03').click(function(){ 185 slider.css('opacity',0); 186 slider.animate({'z-index':1},300,function(){ 187 slider.slick('setPosition'); 188 slider.animate({'opacity':1}); 189 }); 190 }); 191}); 192

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

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

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

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

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

colling

2018/11/05 01:42

モーダル用のjqueryプラグインは何を使っているのか書いた方が回答を得られると思います。
tom1645

2018/11/05 04:34

アドバイスありがとうございます。プラグインは、fullPage.jsになります。
colling

2018/11/05 23:06

提示されているソースでは、モーダルウインドウも、スクロールも現れません。問題が再現できるソースを提示できますか?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問