jQuery Mobile listview子菜单

时间:2013-07-05 10:57:38

标签: listview jquery-mobile

如果我正确阅读文档,我理解嵌套列表已从JQM 1.3.1中删除,这意味着我无法使用这样的列表格式:

<ul data-role="listview">
    <li></li>
    <li></li>
    <li>
        <ul>
            <li></li>
            <li></li>
            <li></li>
        <ul>
    </li>
</ul>

我不确定现在做嵌套列表的正确方法是什么,所以我这样做了:

<ul data-role="listview"><li></li></ul>
<ul data-role="listview"><li></li></ul>
<ul data-role="listview"><li></li></ul>
<ul data-role="listview" class="submenu">
    <li></li>
    <li></li>
    <li></li>
</ul>

所以从技术上讲,每个列表项只是一个列表视图,只有一个列表项,任何子菜单都是普通的列表视图列表。

这有效吗?我的意思是,它有效,只是想知道是否有更好的方法。

1 个答案:

答案 0 :(得分:2)

嵌套列表仍然可以使用,它们只是从1.3.0版本中弃用。

官方文档:http://view.jquerymobile.com/1.3.0/docs/widgets/listviews/只需搜索名为 Nested 的章节。

使用jQuery Mobile 1.3.1 jsFiddle 示例:http://jsfiddle.net/Gajotres/xeggf/

根据官方博客,它们可能会在版本1.4中删除。

让我们走得更远。处理嵌套列表视图的新方法不存在。 Omar已经告诉过你现在可以做的最接近的事情,它是嵌入到可折叠元素中的 listviews (一个例子可以在答案顶部发布的jsFiddle示例中找到)。没有其他任何东西存在,至少没有开箱即用。

新解决方案需要一些开发,我会留给您。这是一个建议的解决方案(由jQuery Mobile开发人员提供)。

您需要的是原始列表视图,例如使用嵌套列表视图时。但是,您将动态创建新页面而不是嵌套,使用新的listview填充它(这将作为嵌套列表视图)。当你不再需要它时,只需删除它,并在时机成熟时创建一个新的。