【问题标题】:Toolbar with show more button in Web Application (ASP.NET 2.0)Web 应用程序中带有显示更多按钮的工具栏 (ASP.NET 2.0)
【发布时间】:2013-07-05 20:30:29
【问题描述】:

在 ASP.NET 2.0 应用程序中,有一个工具栏,其中显示了几个按钮(div),如下所示:

当用户调整(压缩)浏览器窗口的大小时,如下所示:

这是因为工具栏 div 的高度是自动的,所以它会将 div 包裹到下方。但是,现在我想提一些固定高度,它只在单行中显示工具栏按钮。

在预期行为中,如果工具栏 div 按钮超出该区域,那么它们应该如下所示,就像在桌面应用程序中一样,使用更多按钮来访问那些未显示的按钮。 像这样:

如果在 Web 应用程序中无法实现预期行为,任何人都可以帮助我实现这一目标或建议一些替代解决方案。此应用程序中也使用了 jQuery。 我们将不胜感激。

【问题讨论】:

  • 真的很好。但是,我们可以从 jQuery 内置控件中获得一些东西吗?

标签: javascript html asp.net css web


【解决方案1】:

这是一个更简单但可能不如@PiLHA 灵活的示例 此外,它可能需要一些调整,但它可以工作!它会检查有多少项目适合您的 100% 或任何宽度的容器并采取相应措施。

jsFiddle

function topNavItems() {
    var items = $(".item");
    var listWidth = $(".list").width();
    var itemWidth = $(".item").width();
    var itemsFit = parseInt(Math.floor(listWidth / itemWidth));
    if (items.length > itemsFit) {
        $(".list").after("<div class='arrow'></div>");
        var array = [];
        $(".list .item").slice(itemsFit).each(function (index) {
            var value = $(this).text();
            array[index] = value;
        });
        $(".arrow").html("<select><option>>></option></select>");
        $.each(array, function (index, value) {
            $(".arrow select").append("<option>" + value + "</option>");
        });
    }    
}
topNavItems();
$(window).resize(function () {
    topNavItems();
});

【讨论】:

    猜你喜欢
    • 2014-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-29
    • 1970-01-01
    • 2011-07-27
    • 1970-01-01
    • 2013-12-06
    相关资源
    最近更新 更多