前提・実現したいこと
JS初心者のWEBデザイナーです。
レスポンシブサイトを作成しておりまして、右側に追随するメニュー(fixed_content)をつけているのですが、PCの場合は特定のスクロール位置まで来たらfixed_contentをfadeIn&fadeOutしたく、スマホの場合はそのメニュー自体が非表示になるようにしたいと思っているのですが、うまく挙動せず悩んでおります。。。
発生している問題・エラーメッセージ
スマホサイズにした場合は、display:none;となるようメディアクエリで指定しているのですが、それが反映されずcssの当たらない状態のソースが表示されてしまいます。
該当のソースコード
$(window).scroll(function () { var scrollTop = $(window).scrollTop(); if( 1000 < scrollTop && scrollTop < 2000){ $('.fixed_content').fadeOut(); }else{ $('.fixed_content').fadeIn(); } });
試したこと
試しに、以下のように追記をしてみたのですが、スマホサイズで非表示にはなるようになるのですが、今度はfadeInとfadeOutが効かなくなってしまいました。
$(window).scroll(function () {
var scrollTop = $(window).scrollTop();
if( 1000 < scrollTop && scrollTop < 2000 && !window.matchMedia('screen and (min-width: 768px)')){
$('.fixed_content').fadeOut();
}else{
$('.fixed_content').fadeIn();
}
});
補足情報(FW/ツールのバージョンなど)
どこにミスがあるのか、どうか詳しい方ご教授いただけますでしょうか。。。。
よろしくお願いいたします!
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/28 03:39