【问题标题】:jQuery reload browser window only between specific browser widthjQuery 仅在特定浏览器宽度之间重新加载浏览器窗口
【发布时间】:2012-06-19 22:55:00
【问题描述】:

我正在成功使用这段代码:

$(window).bind('resize',function() {
    window.location.href = window.location.href;
});

但我的问题是,我只想在 320 像素和 480 像素之间缩放时重新加载/刷新窗口。例如,如果我在 480px 和 960px 之间调整大小,我不需要重新加载窗口,所以我需要找到一种方法将其限制为

任何帮助将不胜感激。

谢谢,

在下面编辑

回应 Kolink:

好的,所以我用这个来搞定它:

$(window).bind('resize',function() {

    var winWidth = $(window).width();

    if (winWidth < 480) {

        window.location.href = window.location.href;

    } 
    else {
        // nothing
    }

});

现在的问题是,它在 iphone 上不断地重新加载。如果我在 iPhone 上从纵向转到横向,它只会一遍又一遍地重新加载。有什么建议吗?

【问题讨论】:

  • 调整大小后重新加载的页面会给用户带来糟糕的体验——在我看来。使用 zurb Foundation 或 twitter bootstrap 之类的响应式布局怎么样?
  • 我同意调整大小后重新加载,但我没有看到任何其他解决我的问题的方法。我的网站是响应式的,它使用 jQuery Masonry。基本上,对于 320 像素的用户,我的 columnWidth 需要为 160 像素,而上面的所有内容都是 240 像素。我已经解决了更改列宽的问题,但问题是,在重新加载窗口之前它不会更新......所以这就是我试图找出这个调整大小功能的原因。我的 columnWidth 线如下所示: columnWidth : $(window).width() > 480 ? 240 : 160

标签: jquery resize window refresh reload


【解决方案1】:

只需使用简单的if 语句,检查窗口的大小并仅在必要时重新加载。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-15
    • 2017-11-09
    • 1970-01-01
    • 2013-05-23
    • 2012-03-03
    • 2016-02-16
    • 2021-11-29
    • 2019-09-14
    相关资源
    最近更新 更多