触发媒体查询时刷新页面一次?

时间:2014-01-28 14:54:07

标签: jquery

我想在触发媒体查询时使用jQuery触发页面刷新一次。

这是我检测媒体查询的方式:

function media_query(obj) {
    size = obj();
    if (size != currentSize) {

        if (size == 'mobile') {
            location.reload(); 
            currentSize = 'mobile';
        }
        if (size == 'tablet') {
            location.reload(); 
            currentSize = 'tablet';
        }
        if (size == 'laptop') {

            currentSize = 'laptop';
        }
    }

};

$(window).resize(_.debounce(function () {
    media_query(mqCSS);
}, 10));


$(window).load(function () {
    media_query(mqCSS);
});

使用此代码,页面会不断刷新,而我只想在移动设备或平板电脑相同时进行一次。

2 个答案:

答案 0 :(得分:1)

您可以使用第一次重新加载将参数附加到查询字符串。

location.href = "http://yourpage.com/?reload=1"; 

为避免无限循环,只有在缺少参数时才能触发重定向。

答案 1 :(得分:0)

您可以使用cookie来制作标识符。