为什么我的dojo标题覆盖了我的roundRectList?

时间:2013-05-24 07:35:39

标签: dojo css-position dojox.mobile

我生成一个带有标题和roundrectList的可滚动视图。一切都很好但标题不固定所以我用addFixedBar替换标题的addchild。现在标题已修复,但它覆盖了RoundRectList。该列表的上端是标题,我无法读取它。 我如何告诉列表更小?

if (parentNodeId !== previousParentNodeId){
        var newDiv = new dojox.mobile.ScrollableView({
                    id: divNodesId,
                    dojoType: "dojox.mobile.ScrollableView",
                    scrollDir: "v",
                    style: "background-color: #d0d0d0"
        });
        newDiv.placeAt('mobileView','first');

        //look if there is a previous parent, only if there is one generate back button; needed for root div
        if (previousParentNodeId == null){
            var newHeading = new dojox.mobile.Heading({
                        id: h1NodesId,
                        dojoType: "dojox.mobile.Heading",
                        fixed: "top",
                        label: "Knotenübersicht"
            });
        }
        else {//create heading with back button
                        var newHeading = new dojox.mobile.Heading({
                        id: h1NodesId,
                        dojoType: "dojox.mobile.Heading",
                        back: "zurück",
                        moveTo: previousParentNode,
                        fixed: "top",
                        label: divNodeLabel
            });
        }

        //newHeading.placeAt(divNodesId,'first');
        newDiv.addFixedBar(newHeading);
        newHeading.startup();

        ulNodesId = "ulNodes"+parentNodeId;
        var newUl = new dojox.mobile.RoundRectList({
                    id: ulNodesId,
                    dojoType: "dojox.mobile.RoundRectList"
        });
        newUl.placeAt(divNodesId,'last');
    }

2 个答案:

答案 0 :(得分:0)

尝试将css样式属性直接添加到RoundRectList

的标记中

例如:

<div id="divNodesId" style="z-index: 1;position: relative;top: 15px;"></div>

您也可以尝试将相同的样式添加到:

    var newUl = new dojox.mobile.RoundRectList({
                id: ulNodesId,
                dojoType: "dojox.mobile.RoundRectList",
                style: "z-index: 1;position: relative;top: 15px;"
    });

使用css位置移动它或只使用z-index来查看它。

也许尝试添加宽度和高度css来获得你想要的东西??:

    var newDiv = new dojox.mobile.ScrollableView({
                id: divNodesId,
                dojoType: "dojox.mobile.ScrollableView",
                scrollDir: "v",
                style: "width: 800px,height: 90px;background-color: #d0d0d0"
    });

您也可以左右,右下方使用css。使用+或 - px数字查找所需的位置。不知道如何使列表变小,你可能不需要使用上面的CSS。没有完整的例子很难分辨..

答案 1 :(得分:0)

您的代码中有许多内容需要更改,包括:

  • 添加对ScrollableView的startup()方法的调用(放置 在向DOM添加视图之后)。
  • 要将RoundRectList添加到ScrollableView,请使用例如newUl.placeAt(newDiv.containerNode); (我使用包含RoundRectList和ScrollableView实例的变量名称。请注意,该列表将添加到ScrollableView的containerNode中。)
  • 删除dojoType构造函数参数(这不适用于 程序化实例)。

最简单的方法是您获取灵感或将您的代码与dojox / mobile / tests / test_dynamic-ScrollableView-vh-vf.html(您可以找到源代码分发)进行比较。此测试完全符合您的要求。