如果 window 宽度在 800px 和 799px 之间,则执行 JS 功能
Do JS function if window width between 800px and 799px
我写了这个简单的代码来在 window 介于 799 和 800px 之间时重新加载页面,但它不起作用,有人知道为什么吗?
$(window).resize(function() {
if ( $(window).width() > 799 && $(window).width() < 800 {
location.reload();
} else {}
});
我还编写了这段代码来检查页面重新加载后宽度是否小于 800 来做一些事情
if ($(window).width() < 800) {
// do some stuff
} else {}
我可能还可以使用一个函数,如果断点 (f.ex.: 800px) 被击中,它应该只切换一次,有什么想法吗?
你应该使用 >=
和 <=
而不是 >
和 <
,像这样:
$(window).resize(function() {
if ( $(window).width() >= 799 && $(window).width() <= 800 {
location.reload();
} else {}
});
> 799 && < 800
永远不会触发,因为 799 和 800 之间没有整数。
我找到了解决方案:
var ww = $(window).width();
var limit = 800;
function refresh() {
ww = $(window).width();
var w = ww<limit ? (location.reload(true)) : ( ww>limit ? (location.reload(true)) : ww=limit );
}
var tOut;
$(window).resize(function() {
var resW = $(window).width();
clearTimeout(tOut);
if ( (ww>limit && resW<limit) || (ww<limit && resW>limit) ) {
tOut = setTimeout(refresh, 10);
}
});
我写了这个简单的代码来在 window 介于 799 和 800px 之间时重新加载页面,但它不起作用,有人知道为什么吗?
$(window).resize(function() {
if ( $(window).width() > 799 && $(window).width() < 800 {
location.reload();
} else {}
});
我还编写了这段代码来检查页面重新加载后宽度是否小于 800 来做一些事情
if ($(window).width() < 800) {
// do some stuff
} else {}
我可能还可以使用一个函数,如果断点 (f.ex.: 800px) 被击中,它应该只切换一次,有什么想法吗?
你应该使用 >=
和 <=
而不是 >
和 <
,像这样:
$(window).resize(function() {
if ( $(window).width() >= 799 && $(window).width() <= 800 {
location.reload();
} else {}
});
> 799 && < 800
永远不会触发,因为 799 和 800 之间没有整数。
我找到了解决方案:
var ww = $(window).width();
var limit = 800;
function refresh() {
ww = $(window).width();
var w = ww<limit ? (location.reload(true)) : ( ww>limit ? (location.reload(true)) : ww=limit );
}
var tOut;
$(window).resize(function() {
var resW = $(window).width();
clearTimeout(tOut);
if ( (ww>limit && resW<limit) || (ww<limit && resW>limit) ) {
tOut = setTimeout(refresh, 10);
}
});