大型数据均衡器仅适用于 Zurb Foundation 5?

data-equalizer on large only with Zurb Foundation 5?

有谁知道如何以及是否可以将数据均衡器限制在较大或以上?我有 3 个列在大视图中使用它,但在中视图和低视图中并不真正需要它。

根据这个 issue,这还不容易实现。

但是,以下可能对您有用。此示例假设您正在使用 Foundation 5 附带的默认媒体查询断点。基本上此示例所做的是查看 window 大小,并根据大小设置数据均衡器属性。

<div class="row equal" data-equalizer>
    <div class="medium-6 columns panel equal-watch" data-equalizer-watch>
        <h1>hello</h1>    
        <p>(lots of text, presumably)</p>
        <p>(lots of text, presumably)</p>
    </div>
    <div class="medium-6 columns panel equal-watch" data-equalizer-watch>hi</div>
</div>

javascript:

function setEqualizer() {
    // get the width in ems.
    var widthEms = $(window).width() / parseFloat($('html').css('font-size'));
    if (widthEms < 64.063) {
        $('.equal').removeAttr('data-equalizer');
        $('.equal-watch').removeAttr('data-equalizer-watch');
    } else {
        $('.equal').attr('data-equalizer', '');
        $('.equal-watch').attr('data-equalizer-watch', '');
    }
    $(document).foundation('equalizer', 'reflow');
}

// set Equalizer upon load
setEqualizer();

我无法使用 window 调整大小检测器完成这项工作,但它在页面加载时确实有效。尝试在此 fiddle 中重新调整输出窗格的大小并重新 运行 它。

jsfiddle example

希望这可以帮助您开始使用更好的解决方案。

将此 data-equalizer-mq="large-up" 添加到您的均衡器 div 中。要了解更多信息,请阅读此 link 响应式均衡器主题

感谢@chad,

$(window).on('load resize', function () {
    var minWidth = 640;
    var viewport = {
        width: $(window).width(),
        height: $(window).height()
    };

    if (viewport.width > minWidth && !$("#cre-ratesBox section").attr("data-equalizer")) {
        $("#cre-ratesBox section").attr("data-equalizer", "cre");
        $("#rateBox").attr("data-equalizer-watch", "cre");
        $("#cre-from").attr("data-equalizer-watch", "cre");
    } else if (viewport.width < minWidth && $("#cre-ratesBox section").attr("data-equalizer")) {
        $("#cre-ratesBox section").removeAttr("data-equalizer", "cre").height('auto');
        $("#rateBox").removeAttr("data-equalizer-watch", "cre").height('auto');
        $("#cre-from").removeAttr("data-equalizer-watch", "cre").height('auto');
    }
    $(document).foundation('equalizer', 'reflow');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>