質問: 768; if (w < x) { $(window).on("scroll touchmove", function(){ //スクロール中に判断する $(".flo_ban").stop(); //アニメーションしている場合、アニメーションを強制停止 $(".flo_ban").css('display', 'none').delay(500).fadeIn('fast'); //スクロール中は非表示にして、500ミリ秒遅らせて再び表示 }); } else { //それ以外のときの処理 $('.flo_ban').hide(); } });
回答: イベントの適用の仕方に問題があるようなので、こうしてみてはいかがでしょうか。 ``` $(function(){ test(); // htmlの読み込み完了時に実行される var timer = false; $(window).on('resize scroll touchmove', function(){ $(".flo_ban").hide(); // resize scroll touchmove中は要素を隠す if (timer !== false) { clearTimeout(timer); } timer = setTimeout(function(){ test(); // resize scroll touchmoveイベントの完了から500ms後に実行される }, 500); }); }); function test(){ var w = $(window).width(); var x = 768; if (w < x) { $(".flo_ban").fadeIn('fast'); } else { $(".flo_ban").hide(); } } ```