1

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

4

3 回答 3

2

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

于 2015-09-10T12:13:26.277 回答
0

根据这个问题,这还不容易。

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

<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();

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

jsfiddle 示例

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

于 2015-02-14T23:58:28.253 回答
0

谢谢@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>

于 2016-04-05T15:29:22.733 回答