android多页的phonegap

时间:2011-05-09 05:30:30

标签: jquery android html cordova

我是android中phonegap的新用户。我试图在一个html文件中创建一个包含多个页面的项目,但它无法正常工作。 我使用的代码如下所示

<!DOCTYPE html> 
<html> 
    <head> 
    <meta charset="utf-8" /> 
    <title>Page Title</title> 
    <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.css" /> 
    <script src="http://code.jquery.com/jquery-1.5.min.js"></script> 
    <script src="http://code.jquery.com/mobile/1.0a3/jquery.mobile-1.0a3.min.js"></script> 
<body> 

<!-- Start of first page --> 
<div data-role="page" id="foo"> 

    <div data-role="header"> 
        <h1>Foo</h1> 
    </div><!-- /header --> 

    <div data-role="content">   
        <h2>Foo</h2> 
        <p>I'm first in the source order so I'm shown as the page.</p>      
        <p>View internal page called <a href="#bar">bar</a></p> 
        <p>View internal page called <a href="#baz" data-rel="dialog" data-transition="pop">baz</a> as a dialog.</p> 
    </div><!-- /content --> 

    <div data-role="footer"> 
        <h4>Page Footer</h4> 
    </div><!-- /footer --> 
</div><!-- /page --> 


<!-- Start of second page --> 
<div data-role="page" id="bar"> 

    <div data-role="header"> 
        <h1>Bar</h1> 
    </div><!-- /header --> 

    <div data-role="content">   
        <h2>Bar</h2> 
        <p>I'm the bar page.</p>        
        <p><a href="#foo" data-direction="reverse">Back to foo</a></p>  
    </div><!-- /content --> 

    <div data-role="footer"> 
        <h4>Page Footer</h4> 
    </div><!-- /footer --> 
</div><!-- /page --> 


<!-- Start of second page --> 
<div data-role="page" id="baz"> 

    <div data-role="header"> 
        <h1>Baz</h1> 
    </div><!-- /header --> 

    <div data-role="content">   
        <h2>Baz</h2> 
        <p>I'm the baz page, viewed as a dialog.</p>        
        <p><a href="#foo" data-rel="back">Back to foo</a></p>   
    </div><!-- /content --> 

    <div data-role="footer"> 
        <h4>Page Footer</h4> 
    </div><!-- /footer --> 
</div><!-- /page --> 

</body> 
</html> 

请仔细研究这一点,并感谢您在这方面提供的任何帮助。

5 个答案:

答案 0 :(得分:1)

您需要为每个页面创建一个具有数据角色类型=具有名称唯一ID

的页面的div

此外,所有页面必须使用相同的html文件调用存储

<a href="#page_id">bar</a>



    <div data-role="page" id="foo" data-theme="b">
<div data-role="content">   
    <h2>Foo</h2> 
    <p>I'm first in the source order so I'm shown as the page.</p>      
    <p>View internal page called <a href="#foo2">bar</a></p> 
    <p>View internal page called <a href="#foo2" data-rel="dialog" data-transition="pop">baz</a> as a dialog.</p> 
</div><!-- /content --> 

<div data-role="footer"> 
    <h4>Page Footer</h4> 
</div>



<div data-role="page" id="foo2" data-theme="b">
<div data-role="content">   
    <h2>Foo2</h2> 

</div><!-- /content --> 

<div data-role="footer"> 
    <h4>Page Footer</h4> 
</div>

答案 1 :(得分:1)

McDowell是对的,你错过了</head>标签

另外,请确保您的.js和.css源保存在本地,并且它们的路径是相对的,而不是绝对的。

重写为:

<link rel="stylesheet" href="jquery.mobile-1.0a3.min.css" />
<script src="jquery-1.5.min.js"></script>
<script src="jquery.mobile-1.0a3.min.js"></script>

不要忘记PhoneGap / Cordova .js!

答案 2 :(得分:0)

每个页面都需要用data-role ='page'括在div中。对于多个页面,您还应该为每个页面添加一个ID。

例如

<div data-role='page' id='page-foo'>
  <div data-role="content">   
    <h2>Foo</h2> 
    <p>I'm first in the source order so I'm shown as the page.</p>      
    <p>View internal page called <a href="#bar">bar</a></p> 
    <p>View internal page called <a href="#baz" data-rel="dialog" data-transition="pop">baz</a> as a dialog.</p> 
  </div><!-- /content --> 

  <div data-role="footer"> 
    <h4>Page Footer</h4> 
  </div><!-- /footer --> 
</div>

答案 3 :(得分:0)

在小提琴中工作得很好。您的页面布局和jquery移动页面布局似乎也是正确的。

http://jsfiddle.net/dhavaln/Lbe6P/

答案 4 :(得分:0)

您似乎错过了</head>

添加后,您的代码运行正常。