编程语言
首页 > 编程语言> > javascript-布置Dojo Mobile App

javascript-布置Dojo Mobile App

作者:互联网

你好
是否有任何布局dojo移动应用程序的经验?我想在我的应用程序中有一个标题部分,并在页面的标题下面有一个子导航,然后是可滚动的内容部分,最后是底部的主导航.一次应显示所有内容,因此您无需滚动即可导航.问题是,如果所有内容都可见,我将无法再看到可滚动内容部分的所有内容,因为导航位于其上方,或者如果可滚动内容部分是完全可读的,则必须滚动才能到达每个导航.有人知道如何完成该布局吗?这是我的代码,也是您可以观看的示例.

例如:click here

码:

 <!DOCTYPE html>
    <html>
    <head>

    <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,minimum-scale=1,user-scalable=no"/>
    <meta name="apple-mobile-web-app-capable" content="yes" />

    <title>Layout</title>

                <link href="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dojox/mobile/themes/iphone/iphone.css" rel="stylesheet"></link>

                <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dojo/dojo.xd.js.uncompressed.js"></script>

                <script type="text/javascript">
                               // Use the lightweight parser
                               dojo.require("dojox.mobile.parser");
                               // Require Dojo mobile
                               dojo.require("dojox.mobile");
                               dojo.require("dojox.mobile.TabBar");
                               dojo.require("dojox.mobile.ScrollableView");
                               //Require the compat if the client isn't Webkit-based
                               dojo.requireIf(!dojo.isWebKit,"dojox.mobile.compat");

                               dojo.ready(function() {
                                               // Parse the page!
                                               dojox.mobile.parser.parse();
                               });

                </script>

    </head>
    <body>

    <div dojoType="dojox.mobile.View" id="content-1" selected="true">

                               <div dojoType="dojox.mobile.Heading" id="heading-1">
                                               Heading 1
                               </div>                  

                               <ul dojoType="dojox.mobile.TabBar" barType="segmentedControl" id="top-nav">
                                               <li dojoType="dojox.mobile.TabBarButton" id="top-nav-1" moveTo="content-1-1" selected="true">Top-Nav 1</li>
                                               <li dojoType="dojox.mobile.TabBarButton" id="top-nav-2" moveTo="content-1-2">Top-Nav 2</li>
                                               <li dojoType="dojox.mobile.TabBarButton" id="top-nav-3" moveTo="content-1-3">Top-Nav 3</li>
                               </ul>

                               <div dojoType="dojox.mobile.ScrollableView" id="content-1-1" selected="true">

                                               <h3>Content 1-1</h3>

                                               Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 
                                               Aenean commodo ligula eget dolor. Aenean massa. Cum sociis 
                                               natoque penatibus et magnis dis parturient montes, nascetur
                                               ridiculus mus. Donec quam felis, ultricies nec, pellentesque
                                               eu, pretium quis, sem. Nulla consequat massa quis enim. Donec
                                               pede justo, fringilla vel, aliquet nec, vulputate eget, arcu.
                                               In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
                                               Nullam dictum felis eu pede mollis pretium. Integer tincidunt.
                                               Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate 
                                               eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, 
                                               eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis,
                                               feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet.
                                               Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue.
                                               Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
                                               Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper 
                                               libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit 
                                               vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et
                                               ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.
                                               Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt.
                                               Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis
                                               magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nun. 
                               </div>

                               <div dojoType="dojox.mobile.ScrollableView" id="content-1-2">

                                               <h3>Content 1-2</h3>

                                               Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 
                                               Aenean commodo ligula eget dolor. Aenean massa. Cum sociis 
                                               natoque penatibus et magnis dis parturient montes, nascetur
                                               ridiculus mus. Donec quam felis, ultricies nec, pellentesque
                                               eu, pretium quis, sem. Nulla consequat massa quis enim. Donec
                                               pede justo, fringilla vel, aliquet nec, vulputate eget, arcu.
                                               In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
                                               Nullam dictum felis eu pede mollis pretium. Integer tincidunt.
                                               Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate 
                                               eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, 
                                               eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis,
                                               feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet.
                                               Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue.
                                               Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
                                               Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper 
                                               libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit 
                                               vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et
                                               ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.
                                               Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt.
                                               Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis
                                               magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nun. 
                               </div>

                               <div dojoType="dojox.mobile.ScrollableView" id="content-1-3">

                                               <h3>Content 1-3</h3>

                                               Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 
                                               Aenean commodo ligula eget dolor. Aenean massa. Cum sociis 
                                               natoque penatibus et magnis dis parturient montes, nascetur
                                               ridiculus mus. Donec quam felis, ultricies nec, pellentesque
                                               eu, pretium quis, sem. Nulla consequat massa quis enim. Donec
                                               pede justo, fringilla vel, aliquet nec, vulputate eget, arcu.
                                               In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
                                               Nullam dictum felis eu pede mollis pretium. Integer tincidunt.
                                               Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate 
                                               eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, 
                                               eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis,
                                               feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet.
                                               Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue.
                                               Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
                                               Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper 
                                               libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit 
                                               vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et
                                               ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.
                                               Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt.
                                               Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis
                                               magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nun. 
                               </div>

                </div>

                <div dojoType="dojox.mobile.ScrollableView" id="content-2">

                               <div dojoType="dojox.mobile.Heading" id="heading-2" fixed="top">
                                               Heading 2
                               </div>                  

                               <h3>Content 2-1</h3>

                               Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 
                               Aenean commodo ligula eget dolor. Aenean massa. Cum sociis 
                               natoque penatibus et magnis dis parturient montes, nascetur
                               ridiculus mus. Donec quam felis, ultricies nec, pellentesque
                               u, pretium quis, sem. Nulla consequat massa quis enim. Donec
                               pede justo, fringilla vel, aliquet nec, vulputate eget, arcu.
                               In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
                               Nullam dictum felis eu pede mollis pretium. Integer tincidunt.
                               Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate 
                               eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, 
                               eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis,
                               feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet.
                               Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue.
                               Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
                               Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper 
                               libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit 
                               vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et
                               ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.
                               Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt.
                               Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis
                               magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nun. 

                </div>

                <div dojoType="dojox.mobile.ScrollableView" id="content-3">

                               <div dojoType="dojox.mobile.Heading" id="heading-3" fixed="top">
                                               Heading 3
                               </div>                  

                               <h3>Content 3-1</h3>

                               Lorem ipsum dolor sit amet, consectetuer adipiscing elit. 
                               Aenean commodo ligula eget dolor. Aenean massa. Cum sociis 
                               natoque penatibus et magnis dis parturient montes, nascetur
                               ridiculus mus. Donec quam felis, ultricies nec, pellentesque
                               eu, pretium quis, sem. Nulla consequat massa quis enim. Donec
                               pede justo, fringilla vel, aliquet nec, vulputate eget, arcu.
                               In enim justo, rhoncus ut, imperdiet a, venenatis vitae, justo.
                               Nullam dictum felis eu pede mollis pretium. Integer tincidunt.
                               Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate 
                               eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, 
                               eleifend ac, enim. Aliquam lorem ante, dapibus in, viverra quis,
                               feugiat a, tellus. Phasellus viverra nulla ut metus varius laoreet.
                               Quisque rutrum. Aenean imperdiet. Etiam ultricies nisi vel augue.
                               Curabitur ullamcorper ultricies nisi. Nam eget dui. Etiam rhoncus. 
                               Maecenas tempus, tellus eget condimentum rhoncus, sem quam semper 
                               libero, sit amet adipiscing sem neque sed ipsum. Nam quam nunc, blandit 
                               vel, luctus pulvinar, hendrerit id, lorem. Maecenas nec odio et
                               ante tincidunt tempus. Donec vitae sapien ut libero venenatis faucibus.
                               Nullam quis ante. Etiam sit amet orci eget eros faucibus tincidunt.
                               Duis leo. Sed fringilla mauris sit amet nibh. Donec sodales sagittis
                               magna. Sed consequat, leo eget bibendum sodales, augue velit cursus nun. 

                </div>

                <ul id="bottom-nav" dojoType="dojox.mobile.TabBar">
                               <li id="bottom-nav-1" dojoType="dojox.mobile.TabBarButton" selected="true" moveTo="content-1">Content 1</li>
                               <li id="bottom-nav-2" dojoType="dojox.mobile.TabBarButton" moveTo="content-2">Content 2</li>
                               <li id="bottom-nav-3" dojoType="dojox.mobile.TabBarButton" moveTo="content-3">Content 3</li>
                </ul>

    </body>
</html>

编辑:更精确一点我做了一些图像,您可以找到here

我希望这些图像有助于理解我想要达到的目标.我想要一个带有标题的应用程序布局,在该标题的下面是子导航,后跟可滚动的内容区域,最后是主导航的页脚.一切都应该一次可见!!!因此,内容区域应该获得显示的高度-页眉-页脚-subNav.

|-------------------------------|
|           Header              |
|-------------------------------|
|        Sub navigation         |
|-------------------------------|
|                               |
|     Scrollable content        |
|                               |
|    Height = display-height -  |
|    header - subNav - footer   |
|                               |
|-------------------------------|
|    Footer / Main navigation   |
|-------------------------------|

我希望Dojo mobile可以实现这样的布局.

谢谢你的支持!!!
拉尔夫

解决方法:

你快到了只需使用fixed =“ top”和fixed =“ bottom”.

由于您已经在ScrollableView外部添加了页脚,因此只需添加fixed =“ bottom”.根据文档,您需要在两个标题元素上固定“ =“ top”,但如果没有这些元素,它似乎可以正常工作.

此处提供更多信息(特别是,请参见页面底部的示例):http://docs.dojocampus.org/dojox/mobile/ScrollableView.

标签:mobile,dojo,javascript
来源: https://codeday.me/bug/20191208/2088340.html