Modernizr 媒体查询触发不一致
Modernizr media query triggering inconsistently
我试图让我的脚本仅在屏幕尺寸超过特定尺寸 (800px) 时触发,不仅在加载时,而且在屏幕调整大小时。
我已将其放入 Modernizr mq 脚本中,但触发不一致。有时它会在小屏幕上触发我的脚本。有时在大屏幕上。有时根本不会。这让我相信我完全搞砸了!
谁能指出我正确的方向?
$(function() {
$(window).resize(function(){
if (Modernizr.mq('(min-width: 800px)')) {
// script to trigger
$('.dropdown').on('mouseenter mouseleave click tap', function() {
$(this).toggleClass("open");
});
}
}).resize();
});
可能是因为你从resize
事件中触发了resize
事件,导致事件触发无限循环。
另外,为什么不直接测试屏幕尺寸呢?
$(function() {
$(window).resize(function(){
// Use this for browser width: if(window.innerWidth >= 800)
if (screen.width >= 800) {
// script to trigger
$('.dropdown').on('mouseenter mouseleave click tap', function() {
$(this).toggleClass("open");
});
}
});
});
我试图让我的脚本仅在屏幕尺寸超过特定尺寸 (800px) 时触发,不仅在加载时,而且在屏幕调整大小时。
我已将其放入 Modernizr mq 脚本中,但触发不一致。有时它会在小屏幕上触发我的脚本。有时在大屏幕上。有时根本不会。这让我相信我完全搞砸了!
谁能指出我正确的方向?
$(function() {
$(window).resize(function(){
if (Modernizr.mq('(min-width: 800px)')) {
// script to trigger
$('.dropdown').on('mouseenter mouseleave click tap', function() {
$(this).toggleClass("open");
});
}
}).resize();
});
可能是因为你从resize
事件中触发了resize
事件,导致事件触发无限循环。
另外,为什么不直接测试屏幕尺寸呢?
$(function() {
$(window).resize(function(){
// Use this for browser width: if(window.innerWidth >= 800)
if (screen.width >= 800) {
// script to trigger
$('.dropdown').on('mouseenter mouseleave click tap', function() {
$(this).toggleClass("open");
});
}
});
});