循环中的Foundation.MediaQuery.current(第一次迭代总是不显示,下一次总是正确的)

时间:2016-06-06 09:14:05

标签: javascript jquery zurb-foundation zurb-foundation-6

我使用Foundation.MediaQuery.current来确定当前断点。每当我第一次打电话给console.log(Foundation.MediaQuery.current) (n = 0)时,我什么也得不到。

对于所有下一个电话(n> 0)我总是得到正确的断点,让我们说large

这是我的功能:

_calculateLimit = function () {
    var postsInjectedCount = container.find('.post-appended').length;

    console.log(Foundation.MediaQuery.current);

    if (Foundation.MediaQuery.current === 'large') { // gives nothing on first iteration :/
        return postsInjectedCount % 3 !== 0 ? 2 : 3;
    }

    return postsInjectedCount % 2 !== 0 ? 1 : 2;
},

下图显示了我的Chrome开发工具的屏幕。

enter image description here

有用的信息1:首次通话和下次通话之间的业务逻辑没有区别。

有用信息2:我使用网站基础~6.2.1

我做错了什么?

2 个答案:

答案 0 :(得分:3)

在Foundation初始化之前,您似乎正在运行代码。将init代码放在JavaScript文件的顶部是一种很好的做法。

答案 1 :(得分:0)

如果将console.log放在函数末尾,您会看到更好。所以尝试一下,然后告诉结果。

它将阐明错误的位置。