【问题标题】:Desktop menu to Fade In on mouse movement yet stay hidden in mobile screen size桌面菜单在鼠标移动时淡入,但在移动屏幕尺寸中保持隐藏
【发布时间】:2016-02-20 04:15:15
【问题描述】:

我需要一个在鼠标停止移动或离开浏览器窗口时淡入的菜单。我目前使用 css 媒体查询隐藏桌面菜单。问题是,当我执行此代码时,尽管有媒体查询,但仍显示桌面版本(768 像素以上)。有什么建议吗?

	$(function() {
		
		var timer;

		$(window).on('mousemove', function () {
		  $('.hide-for-video').addClass('show');
		  try {
			clearTimeout(timer);
		  } catch (e) {}
		  timer = setTimeout(function () {
			$('.hide-for-video').removeClass('show');
		  }, 1500);
		});
		
	});
.hide-for-video {
  display: none;
  visibility: hidden;
  opacity: 0;
  transition: all 1s ease; }
.hide-for-video.show {
  display: block;
  opacity: 1;
  visibility: visible; }

#menu {
		display: none;
	}
#menu-mobile {
		display: block;
	}



/* Larger Than 768px */
@media only screen and (min-width : 768px) {
	#menu {
		display: block;
	}
	#menu-mobile {
		display: none;
	}
	.hide-for-video.show {
	  opacity: 1;
	  visibility: visible;
	}
}
<!--Desktop Menu 
===========================================-->
  
<nav id="menu" class="hide-for-video" >
</nav>


<!--Mobile Menu 
===========================================-->

<nav id="menu-mobile" class="" >
</nav>

【问题讨论】:

    标签: javascript mobile menu media-queries


    【解决方案1】:

    $(函数() {

        var timer;
        if($(window).width() > 723){
        $(window).on('mousemove', function () {
          $('.hide-for-video').addClass('show');
          try {
            clearTimeout(timer);
          } catch (e) {}
          timer = setTimeout(function () {
            $('.hide-for-video').removeClass('show');
          }, 1500);
        });
        }
    });
    

    【讨论】:

    • @A.Kolbo - 太好了,如果我正确回答了您的问题,请按我的回答打勾:)
    猜你喜欢
    • 2012-04-19
    • 2022-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多