检测窗口调整大小事件的时间

时间:2015-07-06 09:01:47

标签: javascript jquery resize

我有一个网站需要在调整大小后重新加载并找到我自己的编码脚本限制,自动重新加载页面:

我希望脚本的行为如下:

  

如果窗口宽度为< 768px并保持< 768px想要重新加载页面

     

如果窗口宽度为>= 768px并且< 768px我想重新加载页面

     

如果窗口宽度为< 768px并且>= 768px我要重新加载页面

     

如果窗口宽度为>= 768px并保持>= 768px,则应始终重新加载

使用以下代码轻松完成最后一部分:

// After resize events
var id;
$(window).resize(function() {
    clearTimeout(id);
    id = setTimeout(doneResizing, 500);
});
function doneResizing(){
    if($(window).width() > 767) {
        if (window.RT) clearTimeout(window.RT);
          window.RT = setTimeout(function()
          {
            this.location.reload(false); /* false to get page from cache */
          }, 200);
    }
}

我想我必须创建一个存储当前var的{​​{1}},然后检查$(window).width();,但从这一点开始,我的思绪就失去了控制权。

1 个答案:

答案 0 :(得分:1)

// After resize events
var id;
var startWidth = window.innerWidth; //get the original screen width

$(window).resize(function() {
    clearTimeout(id);
    id = setTimeout(doneResizing, 500);
});
function doneResizing(){
    if ($(window).width() > 767) {
        this.location.reload(false);
    } else {
        if (startWidth > 767){
            this.location.reload(false);                
        }
    }
}