我有一个带有两个html页面的项目(bmi.html和7min.html)和一些javascript ...我使用页脚在页面之间导航。
以下是我的代码。
7分钟:http://jsfiddle.net/Rwf5G/ bmi:http://jsfiddle.net/snKyK/
<html>
<head>
<meta charset="utf-8">
<title>Body Trainer</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.2.1/jquery.mobile-1.2.1.min.css" />
<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>
<script src="http://jquerymobile.com/demos/1.2.1/docs/_assets/js/jqm-docs.js"></script>
<script src="http://jquerymobile.com/demos/1.2.1/js/jquery.mobile-1.2.1.js"></script>
</head>
<body>
<div data-role="page" id="7min-page" class="type-interior" >
<div data-role="header" data-position="fixed" data-id="appHeader" >
<h1>Workout</h1>
</div><!-- /header -->
<div data-role="content" >
<h4>Brief</h4>
<p>
Some bla bla...
</p>
</div>
<div data-role="footer" data-id="appFooter" data-position="fixed">
<div data-role="navbar">
<ul>
<li>
<a href="bmi.html" data-prefetch="true">BMI</a>
</li>
<li>
<a href="7min.html" data-prefetch="true" class="ui-btn-active ui-state-persist">7min</a>
</li>
</ul>
</div><!-- /navbar -->
</div><!-- /footer -->
</div>
</body>
(很抱歉我使用jsfiddle,我在这里添加代码时遇到了一些问题。)
答案 0 :(得分:1)
第一期:
jQuery Mobile使用Ajax Navigation系统加载页面并更改视图/页面。当您从 bmi.html 开始时,将加载所有HTML标记。当您从 bmi.html 导航到 7min.html 时,jQuery Mobile仅加载<div data-role="page"></div>
及其中的内容。它忽略了data-role=page
div。
<div data-role="page"></div>
。rel="external"
或data-ajax="false"
添加到锚标记。 这样做会正常加载页面,但是会丢失页面过渡效果。 第二期:
将此属性data-history="false"
添加到<div data-role="popup">
div。